Java集合<8> (Map)

java.util.Map接口代表着键(key)与值(value)之前的映射。

Map接口并不是Collection的子接口,因此它的行为特点和Collection类型是不同的。

Map的实现类

java.util.HashMap

java.util.HashTable

java.util.IdentityHashMap

java.util.LinkedHashMap

java.util.Properties

java.util.TreeMap

java.util.WeakHashMap

在日常开发中用的最多的是HashMap和TreeMap

HashMap只是管理了键值对,它并不保证元素保存在map内部的任何顺序。

TreeMap不但管理者键值对还保证了键和值的顺序迭代。

添加和访问元素

为Map对象中添加爱元素可以调用它的put()方法。

Map map = new HashMap();
map.put("key1","element1");
map.put("key2","element2");
map.put("key3","element3");

获取map中某元素的值,只需要使用get()方法给定对应的键即可

String element = (String)map.get("key1");

也可以通过Iterator迭代器来迭代键集合和值集合

// key iterator
Iterator iterator = map.keySet().iterator();

// value iterator
Iterator iterator = map.values();

通常情况迭代键的集合,然后再通过键找获取值

// 使用iterator
Iterator iterator = map.keySet().iterator();
while(iterator.hasNext()){
    Object key = iterator.next();
    Object value = map.get(key);
}

// 使用for-loop
for(Object key : map.keySet()){
    Object value = map.get(key);
}

删除元素

删除元素通过调用remove(Object key);方法。

// 返回对应的value,如果未找到则返回null
Object value = map.remove("key");


你可能感兴趣的:(Java集合<8> (Map))