一段java的小程序,死循环了,不知道错在哪,麻烦各位看看
输出字符串s中含“java”的个数publicclassJigezifuchuan{publicstaticvoidmain(Stringargs[]){intcount...
输出字符串s中含“java”的个数
public class Jigezifuchuan {
public static void main(String args[]) {
int count = 0, i = 0;
String s = "fdasfewfajavafwafjavadasf";
String a = "java";
while(s.indexOf(a,i) != -1) {
i = s.indexOf(a,i)+4;
count++;
}
System.out.println(count);
}
} 展开
public class Jigezifuchuan {
public static void main(String args[]) {
int count = 0, i = 0;
String s = "fdasfewfajavafwafjavadasf";
String a = "java";
while(s.indexOf(a,i) != -1) {
i = s.indexOf(a,i)+4;
count++;
}
System.out.println(count);
}
} 展开
5个回答
展开全部
public class Jigezifuchuan {
public static void main(String args[]) {
int count = 0;
String s = "fdasfewfajavafwafjavadasf";
String a = "java";
count = s.split(a).length;
System.out.println(count);
}
public static void main(String args[]) {
int count = 0, i = 0;
String s = "fdasfewfajavafwafjavadasf";
String a = "java";
//这里死循环是因为While里面的indexOf返回值永远是不等于-1的,而这个值又不回修改,要改的话,可以将这个字符串的截取出来,再在剩下的字符串里面查找字符串,即可……代码懒得写,用上面的那个拆分方法,得到一个数组之后,直接获取这个数据的长度即可计算个数。
while(s.indexOf(a,i) != -1) {
i = s.indexOf(a,i)+4;
count++;
}
System.out.println(count);
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没问题,可能是你的工具问题吧。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没错的,应该是其他的问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看错,程序没问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
尼玛 怎么可能等于-1 你自己syso就知道了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询