java集合主要分三種:list、set、map;其中list和set都繼承自Collection接口,兩者最大區別是set不能包含重復元素
list的常用實現類有:
ArrayList:大小可變數組的實現 LinkedList:鏈接列表實現,元素增刪快,查找慢 Vector:線程安全的大小可變數組的實現list常用的方法有:
add(E e); // 向列表的尾部添加指定的元素
clear(); // 從列表中移除所有元素
contains(Object o); // 判斷列表中是否包含指定元素
get(int index); // 返回列表中指定位置的元素。
isEmpty(); // 如果列表不包含元素,則返回 true
iterator(); // 返回包含列表中所有元素的迭代器
remove(int index); // 移除列表中指定位置的元素
set(int index, E element); // 用指定元素替換列表中指定位置的元素
size(); // 返回列表中的元素數
toArray(); //返回包含列表中所有元素的數組
set的常用實現類有:
HashSet:基於hash算法的set集合 LinkedHashSet:基於hash和鏈表算法的set集合 TreeSet:基於二叉樹算法的可排序set集合set常用的方法有:
add(E e); // 如果set中尚未存在指定的元素,則添加此元素
addAll(Collection c); // 如果set中沒有指定 collection 中的所有元素,則將其添加到此set中(交集運算)
clear(); // 移除此set中的所有元素
contains(Object o); // 如果set包含指定的元素,則返回 true
isEmpty(); // 如果set不包含元素,則返回 true
iterator(); // 返回包含set中所有元素的的迭代器
remove(Object o); // 如果set中存在指定的元素,則將其移除
removeAll(Collection c); //移除set中那些包含在指定 collection 中的元素(差集運算)
retainAll(Collection c); //僅保留set中那些包含在指定 collection 中的元素(並集運算)
size(); // 返回set中的元素數
toArray(); //返回包含set中所有元素的數組
map的常用實現類有:
HashMap:基於hash的map實現 Hashtable:基於hash,線程安全的map實現map常用的方法有:
clear(); // 從此映射中移除所有映射關系
containsKey(Object key); //判斷map中是否包含指定的key
entrySet(); //返回包含Map中所有元素的set集合
get(Object key); // 返回指定鍵所映射的值
isEmpty(); // 如果map不包含元素,則返回 true
keySet(); // 返回此映射中包含的鍵的Set視圖
put(K key, V value); //添加鍵值對
remove(Object key); // 移除指定的key
size(); //返回map中鍵值對總數
values(); // 返回此映射中包含的值的 Collection 視圖
Arrays
asList(T… a); // 將指定的數組轉換成list對象 binarySearch(…); // 使用二分搜索法找指定的對象,使用前須先對數組進行排序 equals(…); // 比較兩個數組是否一致 fill(…); //用指定值替代數組中的所有元素 sort(…); // 對數組進行排序復制數組可以使用 System.arraycopy(…)方法
Iterator
hasNext(); // 如果仍有元素可以迭代,則返回 true next(); // 返回迭代的下一個元素 remove(); // 移除迭代器返回的最後一個元素Collections
sort(…); // 對指定集合進行排序 reverse(…); // 翻轉集合的順序 shuffle(…); // 對指定集合進行位置的隨機置換 fill(…); // 用指定值替代集合中的所有元素 max(…); // 返回集合中最大的元素 min(…); // 返回集合中最小的元素 frequency(…); // 返回指定值在集合中出現的次數 synchronizedList(…)、synchronizedSet(…)、synchronizedMap(…); //返回支持同步的List、Set或Map unmodifiableList(…)、unmodifiableSet(…)、unmodifiableMap(…);