我們都知道,List集合添加元素,有兩種方式,add(value),add(index,value)。
add(value):將元素值默認添加到末尾
add(index,value):按照指定的下標,添加元素
寫個簡單的測試代碼,看哪種方法效率高?
package collection; import java.util.ArrayList; import java.util.List; public class ListTest02 { public static void main(String[] args) { // 統計一個方法執行耗時 long start1 = System.currentTimeMillis(); List list1 = new ArrayList(); for (int i = 0; i < 100001; i++) { list1.add(i); } long end1 = System.currentTimeMillis(); System.out.println("執行add()方法,添加元素到最后面,花費"+(end1 - start1)+"毫秒!"); long start2 = System.currentTimeMillis(); List list2 = new ArrayList(100000); for (int i = 0; i < 100001; i++) { list2.add(0,i); } long end2 = System.currentTimeMillis(); System.out.println("執行add()方法,指定下標添加元素,花費"+(end2 - start2)+"毫秒!"); } }
循環10w次,添加10w個元素,運行結果是:
執行add()方法,添加元素到最后面,花費8毫秒!
執行add()方法,指定下標添加元素,花費486毫秒!
可以看到默認添加到末尾的方法,速度最快,效率最高。
所以除非需要按照指定下標添加元素的場景外,其余都可以用add(value)的方法,向List集合中添加元素。