我不明白爲什麼後續的Java代碼拋出一個異常ArrayIndexOutofBound怎麼做Java的手柄&&內if語句
while (intArray[j] < intArray[j - 1] && j > 0) {
int temp = intArray[j - 1];
intArray[j - 1] = intArray[j];
intArray[j] = temp;
j--;
}
它出現的原因,即使我AND(& &)兩個條件,它會首先執行其中一個條件來檢查它是否符合條件,在這種情況下,它將是intArray [0] < intArray [-1]並導致出現異常。起初讓我困惑,現在我只是在遊蕩,爲什麼程序會這樣呢?
你爲什麼要用while語句?在這種情況下,您可以使用'for' – Andrew
@Andrew Tobilko,這是我的插入排序練習演示代碼的一部分。 http://blog.csdn。net/shanwu1985 /文章/詳情/ 46585999 – shanwu