List、Set、Map集合大雜燴
阿新 • • 發佈:2017-08-04
鏈接 collect hid 鍵值 oar text 同步 二分 實現
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(…);
//返回不可改動的List、Set或Map
List、Set、Map集合大雜燴