public static void main(String[] args)
{
String s = "Hello There";
String p = "eo";
int reps = 0;
for (int i=0; i<s.length()-p.length(); i++) //checks all characters in the length of s.length minus the length it's searching for
{
for (int j=0; j<p.length(); j++)
{
if (s.charAt(i+j) == p.charAt(j))
reps++;
}
}
System.out.print(reps);
}
它打印3的時間e和o出現的次數,當它應該打印4.我認爲這是因爲它結束搜索後檢查「re」,這將意味着它檢查「r」爲「e」,「e」爲「o」。這通常會起作用,但搜索結束於此,如果我嘗試修復它,則會出現範圍錯誤。如何編寫此程序以包含字符串的最後一個字母?
這提出了一個超出範圍的錯誤。 沒關係,你的編輯修正了它。無論如何,我不知道爲什麼我甚至有這個j。我很笨,謝謝。 – user2770254