1
我正在嘗試在ArrayList中搜索「裝箱」整數,並將最低值放入列表的前面。但是,當有新的分鐘時,它似乎並沒有把它放在前面。例如,如果名爲list的變量存儲以下值:{3,8,92,4,2,17,9},並且您進行此調用:minToFront(list);它應該在調用後存儲以下值:{2,3,8,92,4,17,9}假定列表至少存儲一個值。ArrayList出現問題
private static void minToFront(ArrayList<Integer> thing) {
int tempMin = Integer.MAX_VALUE;
for (int i = 0; i < thing.size(); i++) {
if (tempMin < thing.get(i)) {
thing.add(0,thing.get(i));
thing.remove(i+1);
i++;
}
}
}
爲什麼在thing.add()裏面有thing.remove(minLoc)?我不太明白。 –
請參閱http://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html#remove(int) - remove()返回剛刪除的值,然後傳遞給add() 。 –