-1
我想運行下面的代碼,但我得到一個IndexOutOfBoundsException
。我知道問題出在哪裏,但爲了改進代碼,我想添加一條if
語句,如果索引超出範圍,則while
循環會中斷。它現在應該打印"bcd"
而不會引發異常。索引OutOfBound異常的一段代碼?
相信if語句應該用於這個:index > input.length() - 3
但我在哪裏添加它?
public class test {
public void findAbc(String input) {
int index = input.indexOf("abc");
while (true) {
if (index == -1) {
break;
}
String found = input.substring(index + 1, index + 4);
System.out.println(found);
index = input.indexOf("abc", index + 4);
}
}
public void test() {
findAbc("abcdabc");
}
}
**現在應打印「BCD」 **這裏d指「C」 –
後,下一個字符是什麼這樣做的目的方法,以及爲什麼你要將'abc'作爲子字符串硬編碼? –
現在很好地縮進了 –