我有方法來移動 arr 元素:
private static int[] shiftElements(int[] arr, int n) {
for (int i = 0; i < arr.length; i ) {
arr[i n] = arr[i];
}
return arr;
}
n - amount of shifting.
當我執行此代碼時,我遇到了一個例外:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 6
據我了解,程式需要更多空間來包含另一個專案。但我不需要添加更多專案,我需要已經存在的班次。使用n引數,如果引數為負,則所有陣列都向左移動,如果為正,則向右移動,如果為零 - 什么也不會發生。
Examples
ORIGINAL ARRAY: 1,3,5,6,8,10
example:
n = 2
arr: 8,10,1,3,5,6
How to achieve it?
uj5u.com熱心網友回復:
您的例外來自這一行:
arr[i n] = arr[i];
你得到一個例外,因為 i n > arr.length。
從您的示例中,您希望將那些最終在陣列之外的元素添加到前面。
我不會為你做作業,但你可能想為此使用if(...)。或者mod表達...
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/451009.html
上一篇:在視圖中設定所有變數
下一篇:只有在所有檢查都通過后才更新
