关于java里的String.indexOf(String str,int fromIndex)方法效果并不符合解释

qwe970728001 2018-05-22 07:50:56
java里的String.indexOf(String str,int fromIndex)方法我用过之后很奇怪:
String s="ddzdz",d="s";
for(int w=0;w<5;w++)
System.out.println(s.indexOf("z", w));
结果是
2
2
2
4
4
w设置为在第一个z元素前面第0个元素后面的值不论怎么变,结果都为同一个值,而w设置在第一个z元素后面结果好像不确定...
是不是eclipse的编译器有问题?
...全文
1083 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
豪哥super叼 2018-05-23
  • 打赏
  • 举报
回复
这是没错的,这个函数的用法,是从你得w位置开始索引,。。。。那么w为0.1.2的时候索引为2 ,当w为3.4时,直接忽略了第一个z,冲着第二个z去了就是两个索引位都为4。
  • 打赏
  • 举报
回复
答案没啥问题啊,w在变,查找的开始的位置在变化啊。 String s="ddzdz",d="s"; System.out.println(s.indexOf("z", 0)); System.out.println(s.indexOf("z", 1)); System.out.println(s.indexOf("z", 2)); 以上三个是一样的 System.out.println(s.indexOf("z", 3)); System.out.println(s.indexOf("z", 4)); 这两个是一样的
ITjavaman 2018-05-23
  • 打赏
  • 举报
回复
楼上正解,目测楼主估计认为应该打印 2 1 0 1 0

62,612

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧