1. 兩個arraylist指定位置替換數據還是對象 對於少量數據
可以使用set(index,E element) api的解釋
public E set(int index, E element)
- 用指定的元素替代此列表中指定位置上的元素。
-
- 參數:
index
- 要替代的元素的索引element
- 存儲在指定位置上的元素- 返回:
- 以前位於該指定位置上的元素
- 拋出:
IndexOutOfBoundsException
- 如果索引超出範圍 ( index < 0 || index >= size())- 數據量大的時候,可以考慮sublist()方法 此方法是左閉右開的。
- 返回列表中指定的 fromIndex(包括 )和 toIndex(不包括)之間的部分視圖。(如果 fromIndex 和 toIndex 相等,則返回的列表爲空)。返回的列表由此列表支持,因此返回列表中的非結構性更改將反映在此列表中,反之亦然。返回的列表支持此列表支持的所有可選列表操作。
此方法省去了顯式範圍操作(此操作通常針對數組存在)。通過傳遞 subList 視圖而非整個列表,期望列表的任何操作可用作範圍操作。例如,下面的語句從列表中移除了元素的範圍:
list.subList(from, to).clear();
可以對 indexOf 和 lastIndexOf 構造類似的語句,而且 Collections 類中的所有算法都可以應用於 subList。如果支持列表(即此列表)通過任何其他方式(而不是通過返回的列表)從結構上修改,則此方法返回的列表語義將變爲未定義(從結構上修改是指更改列表的大小,或者以其他方式打亂列表,使正在進行的迭代產生錯誤的結果)。