黑马程序员技术交流社区
标题:
一个简单的String题目,你能发现bug么
[打印本页]
作者:
nblity007
时间:
2016-8-3 21:04
标题:
一个简单的String题目,你能发现bug么
查询大字符串中,出现指定小字符串的次数。
如“hellojava,nihaojava,javazhenbang”中查询出现“java”的次数。
我的代码:
//计算在字符串S中出现子串S1的次数;
public static void getSomeNum( String s, String s1){
int count =0;
while(s.length ()>=s1 .length ()){
int i = s. indexOf( s1);
s = s. substring( i+ 1);
count++;
}
System. out.println (s1 +"出现了" +count +"次" );
}
//以为就这么简单的结束了么??多试两个就发现Bug了......你犯同样错误了没!
ps:问题已经解决了~下面是改进的代码:
public static void getSomeNum( String s, String s1){
int count = 0;
int index = -1;
while((index = s .indexOf (s1 ))!=-1 ){
count++;
s= s. substring( index+ 1);
}
//或者用:while((index = s .indexOf (s1 ,index +1 ))!=-1 ){count++}
System. out.println (s1 +"出现了" +count +"次" );
}
作者:
fengjunzixian
时间:
2016-8-3 21:53
可以的。。。。。。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2