黑马程序员技术交流社区
标题:
关于indexof()方法的使用
[打印本页]
作者:
党传才
时间:
2012-4-18 11:49
标题:
关于indexof()方法的使用
代码如下,想输出两个字符串,结果老是重复,请大家帮忙
public class test {
public static void main(String[] args) {
String s="our future is ";
int k=0;
int i=0;
char c[]= new char[10];
for(i=0;i<s.length();k=i,i++){
i=s.indexOf(" ",k);
System.out.println(i);
s.getChars(k,i,c,0);
for(int j=0; j<c.length;j++) {
System.out.print(c[j]);
}
}
i++;
}
}
作者:
张卯
时间:
2012-4-18 12:34
要输出什么样的字符串啊?我只找到了死循环原因,就是k=i应该改成k=i+1,然后最后i++好像也没用到~
作者:
魏明明
时间:
2012-4-18 13:44
public class test {
public static void main(String[] args) {
String s="our future is ";
int k=0;
int i=0;
char c[]= new char[10];
for(i=0;i<s.length();
k=i
,i++){
//你这里条件是k=i;那么下面的中的i索引到的 永远都是3会出现死循环
。
i=s.indexOf(" ",k);//注意此处返回的是从k开始(包括k位置)索引到“ ”的位置,
System.out.println(i);
s.getChars(k,i,c,0);
//你想输出 our
future is可这条语句是包字符串中所截取的单词,复制到c中 的0位置,如果你本次复制的长度小于上次的长度,会有部分字符没有覆盖度,会输出our future isture这样的情况
for(int j=0; j<c.length;j++) {
System.out.print(c[j]);
}
}
i++;
//正如上面的说的 没啥用
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2