Java indexOf() 方法

indexOf() 方法有以下四种形式:

  • public int indexOf(int ch): 返回指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。

  • public int indexOf(int ch, int fromIndex): 返回从 fromIndex 位置开始查找指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。

  • int indexOf(String str): 返回指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。

  • int indexOf(String str, int fromIndex): 返回从 fromIndex 位置开始查找指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。

    语法

    public int indexOf(int ch )
    
    
    
    public int indexOf(int ch, int fromIndex)
    
    
    
    int indexOf(String str)
    
    
    
    int indexOf(String str, int fromIndex)

    参数

    • ch -- 字符,Unicode 编码。

    • fromIndex -- 开始搜索的索引位置。

    • str -- 要搜索的子字符串。

      返回值

      查找字符串,或字符 Unicode 编码在字符串出现的位置:

    • public class Main {
      public static void main(String args[]) {
      String string = "aaa456ac";
      //查找指定字符是在字符串中的下标。在则返回所在字符串下标;不在则返回-1.
      System.out.println(string.indexOf("b")); // indexOf(String str); 返回结果:-1,"b"不存在

      // 从第四个字符位置开始往后继续查找,包含当前位置
      System.out.println(string.indexOf("a",3));//indexOf(String str, int fromIndex); 返回结果:6

      //(与之前的差别:上面的参数是 String 类型,下面的参数是 int 类型)参考数据:a-97,b-98,c-99

      // 从头开始查找是否存在指定的字符
      System.out.println(string.indexOf(99));//indexOf(int ch);返回结果:7
      System.out.println(string.indexOf('c'));//indexOf(int ch);返回结果:7

      //从fromIndex查找ch,这个是字符型变量,不是字符串。字符a对应的数字就是97。
      System.out.println(string.indexOf(97,3));//indexOf(int ch, int fromIndex); 返回结果:6
      System.out.println(string.indexOf('a',3));//indexOf(int ch, int fromIndex); 返回结果:6
      }
      }

      输出结果为:

      -1
      6
      7
      7
      6
      6

      指定子字符串在字符串中第一次出现处的索引,从指定的索引开始。

       
      public class Test {
      public static void main(String args[]) {
      String Str = new String("菜鸟教程:www.runoob.com");
      String SubStr1 = new String("runoob");
      String SubStr2 = new String("com");

      System.out.print("查找字符 o 第一次出现的位置 :" );
      System.out.println(Str.indexOf( 'o' ));
      System.out.print("从第14个位置查找字符 o 第一次出现的位置 :" );
      System.out.println(Str.indexOf( 'o', 14 ));
      System.out.print("子字符串 SubStr1 第一次出现的位置:" );
      System.out.println( Str.indexOf( SubStr1 ));
      System.out.print("从第十五个位置开始搜索子字符串 SubStr1 第一次出现的位置 :" );
      System.out.println( Str.indexOf( SubStr1, 15 ));
      System.out.print("子字符串 SubStr2 第一次出现的位置 :" );
      System.out.println(Str.indexOf( SubStr2 ));
      }
      }
      查找字符 o 第一次出现的位置 :12
      从第14个位置查找字符 o 第一次出现的位置 :17
      子字符串 SubStr1 第一次出现的位置:9
      从第十五个位置开始搜索子字符串 SubStr1 第一次出现的位置 :-1
      子字符串 SubStr2 第一次出现的位置 :16
posted @ 2018-08-06 15:01  苏可爱  阅读(192)  评论(0编辑  收藏  举报