String.indexOf(int x)和String.indexOf(String)之间的区别

时间:2013-08-09 05:00:20

标签: java string

String类中有两种方法看起来像是做同样的事情:

  • indexOf(int)
  • indexOf(String)

有人可以解释这两个功能之间的区别是什么?

4 个答案:

答案 0 :(得分:5)

  • String.indexOf(int) Returns the index within this string of the first occurrence of the specified character
  • String.indexOf(String) Returns the index within this string of the first occurrence of the specified substring

实施例:

String test = "aaabbbaaabbb";
test.indexOf('a') return 0 (first 'a' in string)
test.indexOf('b') return 3 (first 'a' in string)
test.indexOf("aaa") return 0 (first "aaa" in string)
test.indexOf("bbb") return 3 (first "bbb" in string)
test.indexOf("sajx") return -1 (not found)

答案 1 :(得分:0)

indexOf(int ch) 

返回指定字符第一次出现的字符串中的索引。

这将帮助您识别String中存在的字符索引。

indexOf(String str) 

返回指定子字符串第一次出现的字符串中的索引。

这将帮助您识别String中存在的子字符串索引。

答案 2 :(得分:0)

    String str = "abcdefabc";            
    System.out.println(str.indexOf(97)); //97 is int value of 'a'.
     //so this will return first occurrence of 'a'
    System.out.println(str.indexOf("b")); // this will return first 
    //occurrence of "b" in the String

答案 3 :(得分:-1)

String.indexOf(int ch)

返回第一个字符串中的索引  发生指定的字符。如果是一个角色  值ch出现在字符序列中  由此String对象表示,然后是索引(in  第一次出现这种情况的Unicode代码单元)  返回。

String.indexOf(String str)

如果字符串参数作为子字符串出现 这个对象,然后是第一个字符的索引 首先返回这样的子串;如果不是作为一个 substring,返回-1。