- List集合:提供了大量的“根據索引”來存、取元素的方法。由於List根據索引來存取元素,所以它多一個遍歷集合元素的方法。
import java.util.ArrayList; import java.util.List; public class ListTest { public static void main(String[] args) { List<String> list = new ArrayList<String>(); list.add("孫悟空0"); System.out.println(list); list.add("沙和尚0"); System.out.println(list); list.add(1,"孫悟空1"); System.out.println(list); list.add(2,"沙和尚1"); System.out.println(list); } }
- ArrayList與Vector的存儲機制:二者底層完全基於數組——對於數據的存儲,完全基於數組,因此性能非常快,當插入和刪除元素,後面的所有元素要跟着“整體搬家”。
- ArrayList與Vector的區別:vector是一個JDK1.0就有的集合,從JDK1.2之後,sun重寫設計了ArryList,代替了原來的vector。ArrayList的線程是不安全的,vector的線程是安全的。ArrayList的性能比vector要好,在多線程的情況下,可以用Collections把ArrayList轉換成線程安全的。
- LinkList:即是線性表,又是隊列,又是棧,底層基於鏈表來實現的,通常認爲其 性能比ArrayList較慢。當插入元素、刪除元素,無需“整體搬家”,因此性能非常快。