hashmap的使用

构造函数

// 默认构造函数。
HashMap()

// 指定“容量大小”的构造函数
HashMap(int capacity)

// 指定“容量大小”和“加载因子”的构造函数
HashMap(int capacity, float loadFactor)

// 包含“子Map”的构造函数
HashMap(Map<? extends K, ? extends V> map)

API

void                 clear()
Object               clone()
V                    get(Object key)													//返回key对应的value
V                    put(K key, V value)
int                  size()
V                    remove(Object key)
boolean              containsKey(Object key)                                             //判断HashMap是否包含key。
boolean              containsValue(Object value)                                        //判断HashMap是否包含value。
Set<Entry<K, V>>     entrySet()                                                      //返回“HashMap中所有Entry的集合”
boolean              isEmpty()
Set<K>               keySet()
void                 putAll(Map<? extends K, ? extends V> map)
Collection<V>        values()

entrySet()、values()、keySet()原理类似

几种hashmap的遍历方式

  1. 通过entrySet()获取HashMap的“键值对”的Set集合。
// 假设map是HashMap对象
// map中的key是String类型,value是Integer类型
Integer integ = null;
Iterator iter = map.entrySet().iterator();
while(iter.hasNext()) {
    Map.Entry entry = (Map.Entry)iter.next();
    // 获取key
    key = (String)entry.getKey();
        // 获取value
    integ = (Integer)entry.getValue();
}
  1. 根据keySet()获取HashMap的“键”的Set集合。
// 假设map是HashMap对象
// map中的key是String类型,value是Integer类型
String key = null;
Integer integ = null;
Iterator iter = map.keySet().iterator();
while (iter.hasNext()) {
        // 获取key
    key = (String)iter.next();
        // 根据key,获取value
    integ = (Integer)map.get(key);
}
  1. 根据value()获取HashMap的“值”的集合。
// 假设map是HashMap对象
// map中的key是String类型,value是Integer类型
Integer value = null;
Collection c = map.values();
Iterator iter= c.iterator();
while (iter.hasNext()) {
    value = (Integer)iter.next();
}

版权声明:本文为qq_37638060原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。