正確結果為5 我代碼輸出為8 沒找出問題 求指教class Test { public static void main(String[] args) { String s = "sunjavacjavaeeejavapuujavakkkjava"; int count = 0; int x = 0; if (s.contains("java")) { x = s.indexOf("java"); count++; } int y = x + 4; for (int z = 0; z != -1 && y < s.length(); y += 4) { z = s.indexOf("java", y); count++; } System.out.println(count); }}
3 回答

慕蓋茨4494581
TA貢獻1850條經驗 獲得超11個贊
String s = "javasunjavacjavaeeejavapuujavakkkjavaiijavajava";int count = 0;int y=0;for (int z = 0; z!=-1 && y < s.length()-4; y = z+4) { z = s.indexOf("java", y); if (z != -1) { count++; } } System.out.println(count);
直接循環判斷,不等于-1就加一個。

慕尼黑8549860
TA貢獻1818條經驗 獲得超11個贊
public static void main(String[] args) { String s = "sunjavacjavaeeejavapuujavakkkjava"; int y = 0; while (s.indexOf("java")!=-1){ y++; s = s.substring(s.indexOf("java")+4); } System.out.println(y); }

FFIVE
TA貢獻1797條經驗 獲得超6個贊
public static void main(String[] args) { String s = "sunjavacjavaeeejavapuujavakkkjava"; int oldLength = s.length(); s = s.replaceAll("java", ""); int count = (oldLength - s.length()) / 4; System.out.println(count);
添加回答
舉報
0/150
提交
取消