欢迎光临
我们一起进阶

Java字符串(十四):indexOf() 方法

扫码或搜索:沉默王二
发送 290992
即可立即永久解锁本站全部文章

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 — 开始搜索的索引位置,第一个字符是 0 ,第二个是 1 ,以此类推。

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

返回值

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

实例 1

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

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

实例 2

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

        System.out.print("查找字符 i 第一次出现的位置 :" );
        System.out.println(Str.indexOf( 'i' ));
        System.out.print("从第10个位置查找字符 i 第一次出现的位置 :" );
        System.out.println(Str.indexOf( 'i', 10 ));
        System.out.print("子字符串 SubStr1 第一次出现的位置:" );
        System.out.println( Str.indexOf( SubStr1 ));
        System.out.print("从第五个位置开始搜索子字符串 SubStr1 第一次出现的位置 :" );
        System.out.println( Str.indexOf( SubStr1, 5 ));
        System.out.print("子字符串 SubStr2 第一次出现的位置 :" );
        System.out.println(Str.indexOf( SubStr2 ));
    }
}

以上程序执行结果为:

查找字符 i 第一次出现的位置 :9
从第10个位置查找字符 i 第一次出现的位置 :12
子字符串 SubStr1 第一次出现的位置:9
从第五个位置开始搜索子字符串 SubStr1 第一次出现的位置 :9
子字符串 SubStr2 第一次出现的位置 :16
赞(0) 打赏
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

小白学堂,学的不止是技术,更是前程

关于我们免责声明

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏