我很好奇为什么 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
原文由 tmeisenh 发布,翻译遵循 CC BY-SA 4.0 许可协议
空字符串无处不在,无处不在。它时时刻刻都在所有弦中,渗透着它们存在的本质,然而当你寻找它时,你永远不会瞥见它。
一个字符串的开头可以容纳多少个空字符串? 亩
学生对老师说,
老师回应学生,
老师用皮带抽打学生,并指示他继续冥想。