我試圖通過以下代碼從該數組中刪除重復元素,它給了我這個錯誤:線程“main”中的異常 java.lang.ArrayIndexOutOfBoundsException:索引 13 超出 pro2.Main.main(Main.java:36) 長度 13 的范圍代碼 :public static void main(String[] args) { int[] x = { 2, 2, 3, 5, 6, 3, 5, 6, 7, 8, 9, 1, 7 }; Integer[] o = new Integer[x.length]; for (int i = 0; i < x.length; i++) { o[i] = Integer.valueOf(x[i]); } for (int i = 0; i < x.length; i++) { for (int j = i + 1; i < x.length; j++) { if (o[i] == o[j]) { o[j] = null; } } } for (int i = 0; i < x.length; i++) { if(o[i]!=null) System.out.print(o[i]); }}
1 回答

倚天杖
TA貢獻1828條經驗 獲得超3個贊
你這里有一個錯字:
for(int j = i+1 ; i<x.length ; j++) { ^ this should be j
當前(錯誤的)循環直到運行到數組末尾才停止。因此,您試圖獲取 x[12+1] 的值,即 x[13],超出數組范圍。
添加回答
舉報
0/150
提交
取消