【indexof在java中的用法】在Java中,`indexOf()` 是一个非常常用的字符串方法,用于查找某个字符或子字符串在字符串中首次出现的位置。该方法返回的是该字符或子字符串的索引值(从0开始计数),如果未找到,则返回-1。
以下是对 `indexOf()` 方法的详细总结,并通过表格形式展示其不同使用方式和功能。
一、方法概述
方法名 | 描述 | 返回值 |
`indexOf(int ch)` | 查找指定字符 `ch` 在字符串中第一次出现的位置 | 返回字符的索引,若未找到则返回 -1 |
`indexOf(int ch, int fromIndex)` | 从指定位置 `fromIndex` 开始查找字符 `ch` 第一次出现的位置 | 返回字符的索引,若未找到则返回 -1 |
`indexOf(String str)` | 查找指定子字符串 `str` 在字符串中第一次出现的位置 | 返回子字符串的起始索引,若未找到则返回 -1 |
`indexOf(String str, int fromIndex)` | 从指定位置 `fromIndex` 开始查找子字符串 `str` 第一次出现的位置 | 返回子字符串的起始索引,若未找到则返回 -1 |
二、使用示例
示例1:查找字符
```java
String str = "Hello World";
int index = str.indexOf('o');
System.out.println(index); // 输出 4
```
示例2:从指定位置查找字符
```java
int index = str.indexOf('o', 5);
System.out.println(index); // 输出 7
```
示例3:查找子字符串
```java
int index = str.indexOf("World");
System.out.println(index); // 输出 6
```
示例4:从指定位置查找子字符串
```java
int index = str.indexOf("o", 5);
System.out.println(index); // 输出 7
```
三、注意事项
- `indexOf()` 是区分大小写的。
- 如果传入的参数为 `null`,会抛出 `NullPointerException`。
- 若查找的字符或子字符串不存在于原字符串中,将返回 -1。
四、总结
`indexOf()` 是 Java 中处理字符串时非常实用的方法,能够帮助开发者快速定位字符或子字符串的位置。掌握其多种重载形式,可以更灵活地处理字符串操作问题。
方法类型 | 使用场景 | 是否支持从特定位置开始查找 |
字符查找 | 查找单个字符 | 是 |
子串查找 | 查找多个字符组成的子串 | 是 |
无参数 | 默认从开头查找 | 否 |
带参数 | 从指定位置开始查找 | 是 |
通过合理使用 `indexOf()`,可以提高程序的效率和可读性。