【JAVA】學習筆記(1) - java.util.ArrayList

一般陣列(Array)是靜態的,當陣列被初始化後,陣列長度便不能改變,

而ArrayList是可動態改變大小的,它可以隨時從陣列中添加或刪除一個元素。

Java.util.ArrayList類

那何時該使用Array?何時使用ArrayList?
當你不清楚到底有多少個數據元素時就可以用ArrayList。

以下是java.util.ArrayList類的聲明:

public class ArrayList<E>
   extends AbstractList<E>
      implements List<E>, RandomAccess, Cloneable, Serializable

這裡<E>代表元素。

創建一個空的陣列,用來存放字串

ArrayList list = new ArrayList(); 

創建一個指定初始容量的陣列

ArrayList<Integer> list = new ArrayList<Integer>(7);

類建構子

ArrayList()
此函數用於創建一個空的列表,包含10個元素的初始容量。

ArrayList(Collection<? extends E> c)
此構造函數用於創建一個包含指定集合的元素的列表。

ArrayList(int initialCapacity)
此構造函數用於創建一個空列表的初始容量。

類方法

boolean add(E e) 
此方法將指定元素追加到此列表的末尾。

void add(int index, E element) 
此方法將在此列表中指定位置的指定元素。

boolean addAll(Collection<? extends E> c) 
此方法會將所有指定集合中的元素添加到此列表的結尾,因為它們是由指定collection的迭代器返回的順序。

boolean addAll(int index, Collection<? extends E> c) 
此方法將所有指定集合中的元素插入此列表,在指定的位置開始。

void clear() 
此方法刪除所有來自此列表中的元素。

Object clone() 
這個方法返回當前ArrayList實例的淺表副本。

boolean contains(Object o) 
如果此列表包含指定的元素,此方法返回true。

void ensureCapacity(int minCapacity) 
增加此ArrayList的容量。

E get(int index) 
此方法返回的元素在此列表中的指定位置。

int indexOf(Object o) 
此方法返回指定元素的第一個匹配項的索引在此列表中,或者如果此列表中不包含該元素返回-1。

boolean isEmpty() 
如果此列表不包含元素,此方法返回true。

int lastIndexOf(Object o) 
此方法返回指定元素的最後一個匹配項的索引在此列表中,或者-1,如果此列表中不包含該元素。

E remove(int index) 
此方法刪除的元素在此列表中的指定位置。

boolean remove(Object o) 
此方法從該列表中首次出現的指定元素,如果它存在。

protected void removeRange(int fromIndex, int toIndex) 
此方法從該列表中刪除所有的索引fromIndex(包括)與toIndex(不包括)之間的元素。

E set(int index, E element) 
此方法取代在與指定元素在此列表中指定位置的元素。

int size() 
此方法返回此列表中的元素數。

Object[] toArray() 
此方法返回一個包含所有在此列表中正確的序列中元素的數組(從第一個到最後一個元素)。

<T> T[] toArray(T[] a) 
此方法返回一個包含所有在此列表中正確的序列中的元素(從第一個到最後一個元素)數組;返回數組的運行時類型是指定數組。

void trimToSize() 
此方法修整此ArrayList實例的是列表的當前大小的容量。


參考資料:

使用用法: