小编tme*_*enh的帖子

Java String.indexOf和空字符串

我很好奇为什么String.indexOf在要求字符串中的空字符串的索引时返回0(而不是-1).

Javadocs只说这个方法返回指定字符串的字符串中的索引,如果找不到字符串,则返回-1.

对我来说,这种行为似乎非常出乎意料,我本来期待-1.任何想法为什么会发生这种意外行为?我至少认为这在方法的Javadocs中值得注意...

System.out.println("FOO".indexOf("")); // outputs 0 wtf!!!
System.out.println("FOO".indexOf("bar")); // outputs -1 as expected
System.out.println("FOO".indexOf("F")); // outputs 0 as expected
System.out.println("".indexOf("")); // outputs 0 as expected, I think
Run Code Online (Sandbox Code Playgroud)

java string

37
推荐指数
2
解决办法
3万
查看次数

标签 统计

java ×1

string ×1