多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# Java `String.indexOf()`方法示例 > 原文: [https://howtodoinjava.com/java/string/java-string-indexof-method-example/](https://howtodoinjava.com/java/string/java-string-indexof-method-example/) [Java 字符串](https://howtodoinjava.com/java-string/)`indexOf()`方法返回给定参数字符或字符串的**索引**。 如果在字符串中找不到参数,则方法返回`-1`。 字符串的索引计数器从零开始。 ## Java `String.indexOf()`方法语法 `String.indexOf()`方法具有四种重载形式: | 序号 | 方法语法 | 描述 | | --- | --- | --- | | 1. | `int indexOf(String substring)` | 返回给定**子字符串**的索引位置 | | 2. | `int indexOf(String substring, int fromIndex)` | 从`fromIndex`位置返回给定**子字符串**的索引位置 | | 3. | `int indexOf(int ch)` | 返回给定`char`值的索引位置 | | 4. | `int indexOf(int ch, int fromIndex)` | 返回给定`char`值和`fromIndex`位置的索引位置 | #### 不允许使用`null`参数 不允许将`null`参数传递给`indexOf()`方法。 这将导致`NullPointerException`异常。 ```java String blogName = "howtodoinjava.com"; System.out.println( blogName.indexOf(null) ); //Program output Exception in thread "main" java.lang.NullPointerException at java.lang.String.indexOf(String.java:1705) at java.lang.String.indexOf(String.java:1685) at com.StringExample.main(StringExample.java:9) ``` ## 1\. Java `String.indexOf(String substring)`示例 Java 程序使用`indexOf(String substring)`方法在给定的字符串对象中查找子字符串的索引。 ```java public class StringExample { public static void main(String[] args) { String blogName = "howtodoinjava.com"; System.out.println( blogName.indexOf("java") ); //9 System.out.println( "hello world".indexOf("world") ); //6 System.out.println( "hello world".indexOf("earth") ); //-1 } } ``` 程序输出。 ```java 9 6 -1 ``` ## 2\. Java `String.indexOf(String substring, int fromIndex)`示例 Java 程序,使用给定的`indexOf(String substring, int fromIndex, int fromIndex)`方法,在给定的`fromIndex`中查找给定字符串对象中的`substring`索引。 > 请注意,找到子字符串时,索引计数仅从 0 索引开始,并且仅从字符串开头开始。 ```java public class StringExample { public static void main(String[] args) { String blogName = "howtodoinjava.com"; System.out.println( blogName.indexOf("java", 5) ); //9 System.out.println( "hello world".indexOf("world", 6) ); //6 System.out.println( "hello world".indexOf("world", 2) ); //6 System.out.println( "hello world".indexOf("world", 10) ); //-1 } } ``` 程序输出: ```java 9 6 6 -1 ``` ## 3\. Java `String.indexOf(char ch)`示例 Java 程序使用`indexOf(char ch)`方法在给定的字符串对象中查找给定字符`'ch'`的索引。 ```java public class StringExample { public static void main(String[] args) { String blogName = "howtodoinjava.com"; System.out.println( blogName.indexOf('j') ); //9 System.out.println( "hello world".indexOf('w') ); //6 System.out.println( "hello world".indexOf('k') ); //-1 } } ``` 程序输出: ```java 9 6 -1 ``` ## 4\. Java `String.indexOf(int ch, int fromIndex)`示例 Java 程序使用给定的`indexOf(String substring, int fromIndex)`方法从给定的`fromIndex`位置开始在给定的字符串对象中查找字符`'ch'`的索引。 > 请注意,找到字符后,索引计数仅从 0 索引开始,并且仅从字符串的开头开始。 ```java public class StringExample { public static void main(String[] args) { String blogName = "howtodoinjava.com"; System.out.println( blogName.indexOf('j', 4) ); //9 System.out.println( "hello world".indexOf('w', 2) ); //6 System.out.println( "hello world".indexOf('w', 6) ); //6 System.out.println( "hello world".indexOf('k') ); //-1 } } ``` 程序输出: ```java 9 6 6 -1 ``` 学习愉快! [Java `String`文档](https://docs.oracle.com/javase/10/docs/api/java/lang/String.html)