集合 interfaceMap<k,V>
存储键值对,作为一个元组存入。
元组以键作为标记,键相同时,值覆盖。
1) 功能
添加
V | put(K key,V value) 将指定的值与此映射中的指定键关联(可选操作)。 |
void | putAll(Map<? extendsK,? extendsV> m) 从指定映射中将所有映射关系复制到此映射中(可选操作)。 |
删除
void | clear() 从此映射中移除所有映射关系(可选操作)。 |
V | remove(Object key) 如果存在一个键的映射关系,则将其从此映射中移除(可选操作)。 |
判断
boolean | containsKey(Object key) 如果此映射包含指定键的映射关系,则返回 true。 |
boolean | containsValue(Object value) 如果此映射将一个或多个键映射到指定值,则返回 true。 |
获取
V | get(Object key) 返回指定键所映射的值;如果此映射不包含该键的映射关系,则返回 null 。 |
Collection<V> | values() 返回此映射中包含的值的 Collection 视图。 |
Set<Map.Entry<K,V>> | entrySet() 返回此映射中包含的映射关系的 Set 视图。 |
Set<K> | keySet() 返回此映射中包含的键的 Set 视图。 |
2) Map的子类
Hashtable:底层是哈希表结构, 不可存null键null值,。 集合线程同步。
Treemap:底层二叉树,线程不同步,可对map集合中的键进行排序。 和set集合相似,set的底层使用Map集合。
Hashmap:底层是哈希表结构。允许使用null键null值。该集合线程不同步。效率高
常用两种方法:
Set<k> Keyset set集合具备迭代器,能够使用iterator取出值.
String keyset = map.keyset();
/** Iterator<string> it =new interator()<string>;
It =keyset;**/
Iterator<string> it = keyset.Iterator
While( it.HashNest()){
System.out.println(“key:”+it.next()+”value:”map.get(it.next())}
Set<map.entry(k,v)> Entryset 将map集合中的映射关系取出,存入到set集合中。
Set<Map.Entry<String,String> entryset =new map. entryset ();
Iterator<string> it =entryset.Iterator();
While(it.hashnext()){
Map.Entry<String,String>me =it.next;
System.out.println(“key:”+me.getkey()+”value:”+me..getvalue()); }