java之Map和Collection
java中保存對象的容器可分為兩類:
1、Map。Map是以鍵值對的形式來保存一組對象,可以通過鍵來查找值。
2、Collection。用來保存獨(dú)立對象的序列。Collection又可分為三種類型:
(1)List。按照插入的順序保存對象。
(2)Set。無序,不能有重復(fù)元素。
(3)Queue。按照特定規(guī)則確定對象順序,通常就是它們被插入時(shí)的順序,也可根據(jù)具體需求設(shè)置優(yōu)先級。
?
?Map:
Map的常用方法
| boolean containsKey(Object key) | 是否包含鍵key,是則返回 true。 |
| boolean containsValue(Object value) | 是否包含值value,是則返回 true。 |
| boolean isEmpty() | 如果此映射未包含鍵-值映射關(guān)系,則返回 true。 |
| V put(K key, V value) | 插入鍵值對。若key已存在,返回value;否則,返回null。 |
| void putAll(Map<? extends K,? extends V> m) | 將另一個(gè)Map對象復(fù)制到到此對象中。 |
| V remove(Object key) | 根據(jù)key移除鍵值對,返回被刪的值,若不存怎返回null。 |
| void clear() | 清空所有key-value對。 |
| V get(Object key) | 通過key查找value并返回,若無,則返回null。 |
| int size() | 返回key-value對數(shù)量。 |
| Set<Map.Entry<K,V>> entrySet() | 返回鍵值對的Set集。 |
| Set<K> keySet() | 返回的key的Set集。 |
| Collection<V>?values() | ?返回value的Collection集。 |
?
map是一種把key和value進(jìn)行關(guān)聯(lián)的容器,把key的哈希碼作為索引,可以根據(jù)這個(gè)索引獲取保存的值。但是,不同的key可以對應(yīng)相同的value。
在這里,hash碼決定了儲(chǔ)存位置。關(guān)于java中是如何設(shè)置一個(gè)對象的哈希值的,可以參考我的另一篇隨筆java中的hashCode()方法。
Map有兩個(gè)常用的實(shí)現(xiàn)類HashMap和LinkedHashMap,這兩個(gè)類的使用在我的另一篇隨筆java之Map的使用中有較為詳細(xì)的講解。
?
?
?Collection:?
Collection的常用方法
| int size() | 返回元素個(gè)數(shù) |
| boolean add(E e) | 添加元素,添加成功返回true |
| boolean addAll(Collection<? extends E> c) | 將c中的所有元素添加到此對象中 |
| void clear() | 移除此 collection 中的所有元素 |
| boolean contains(Object o) | 若包含元素o,則返回 true |
| boolean containsAll(Collection<?> c) | 若包含c 中的所有元素,則返回 true |
| boolean isEmpty() | 若不包含元素,則返回 true |
| Iterator<E> iterator() | 返回迭代器 |
| boolean remove(Object o) | 移除元素o。若有元素被移除,返回true |
| boolean removeAll(Collection<?> c) | 移除c中包含的所有元素,有改變即返回true |
| boolean retainAll(Collection<?> c) | 僅保留c中包含的元素,有改即返回true |
轉(zhuǎn)載于:https://www.cnblogs.com/zhisuoyu/p/5284823.html
總結(jié)
以上是生活随笔為你收集整理的java之Map和Collection的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux 笔试题
- 下一篇: 统计十进制数的二进制数1的个数