w1. Map、 HashMap

### Map接口
* Map提供了一种映射关系,其中的元素是以键值对(key-value)的形式存储的,能够实现根据key快速查找value
* Map中的键值对以Entry类型的对象实例形式存在
* 键(Key)不可以重复,value值可以
* 每个键最多只可以映射到一个值
* Map接口提供了分别返回key值集合、value值集合以及Entry(键值对)集合的方法
* Map支持泛型,形式如:Map<K,V>


### HaspMap类

* HaspMap是Map的一个重要实现类,也是最常用的,基于哈希表实现
* HaspMap中的Entry对象是无序排列的
* Key的值和value值都可以为null,但是一个HaspMap只能有一个key的值为null的映射(key值不可重复)

 

嵌套类摘要
static interface         Map.Entry<K,V> 
          映射项(键-值对)。

 

方法摘要
 void clear() 
          从此映射中移除所有映射关系(可选操作)。
 boolean containsKey(Object key) 
          如果此映射包含指定键的映射关系,则返回 true
 boolean containsValue(Object value) 
          如果此映射将一个或多个键映射到指定值,则返回 true
 Set<Map.Entry<K,V>> entrySet() 
          返回此映射中包含的映射关系的 Set 视图。
 boolean equals(Object o) 
          比较指定的对象与此映射是否相等。
 V get(Object key) 
          返回指定键所映射的值;如果此映射不包含该键的映射关系,则返回 null
 int hashCode() 
          返回此映射的哈希码值。
 boolean isEmpty() 
          如果此映射未包含键-值映射关系,则返回 true
 Set<K> keySet() 
          返回此映射中包含的键的 Set 视图。
 V put(K key, V value) 
          将指定的值与此映射中的指定键关联(可选操作)。
 void putAll(Map<? extends K,? extends V> m) 
          从指定映射中将所有映射关系复制到此映射中(可选操作)。
 V remove(Object key) 
          如果存在一个键的映射关系,则将其从此映射中移除(可选操作)。
 int size() 
          返回此映射中的键-值映射关系数。
 Collection<V> values() 
          返回此映射中包含的值的 Collection 视图。

 

嵌套类摘要

 

从类 java.util.AbstractMap 继承的嵌套类/接口
AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K,V>

 

构造方法摘要
HashMap() 
          构造一个具有默认初始容量 (16) 和默认加载因子 (0.75) 的空 HashMap
HashMap(int initialCapacity) 
          构造一个带指定初始容量和默认加载因子 (0.75) 的空 HashMap
HashMap(int initialCapacity, float loadFactor) 
          构造一个带指定初始容量和加载因子的空 HashMap
HashMap(Map<? extends K,? extends V> m) 
          构造一个映射关系与指定 Map 相同的新 HashMap

 

方法摘要
 void clear() 
          从此映射中移除所有映射关系。
 Object clone() 
          返回此 HashMap 实例的浅表副本:并不复制键和值本身。
 boolean containsKey(Object key) 
          如果此映射包含对于指定键的映射关系,则返回 true
 boolean containsValue(Object value) 
          如果此映射将一个或多个键映射到指定值,则返回 true
 Set<Map.Entry<K,V>> entrySet() 
          返回此映射所包含的映射关系的 Set 视图。
 V get(Object key) 
          返回指定键所映射的值;如果对于该键来说,此映射不包含任何映射关系,则返回 null
 boolean isEmpty() 
          如果此映射不包含键-值映射关系,则返回 true
 Set<K> keySet() 
          返回此映射中所包含的键的 Set 视图。
 V put(K key, V value) 
          在此映射中关联指定值与指定键。
 void putAll(Map<? extends K,? extends V> m) 
          将指定映射的所有映射关系复制到此映射中,这些映射关系将替换此映射目前针对指定映射中所有键的所有映射关系。
 V remove(Object key) 
          从此映射中移除指定键的映射关系(如果存在)。
 int size() 
          返回此映射中的键-值映射关系数。
 Collection<V> values() 
          返回此映射所包含的值的 Collection 视图。

 

从类 java.util.AbstractMap 继承的方法
equalshashCodetoString

 

从类 java.lang.Object 继承的方法
finalizegetClassnotifynotifyAllwaitwaitwait

 

从接口 java.util.Map 继承的方法
equalshashCode

 

 


val startTime = System.currentTimeMillis()
Thread.sleep(3000)
val endTime = System.currentTimeMillis()
val duration = endTime - startTime
posted @ 2018-08-28 10:25  龙卷风清扬  阅读(162)  评论(0编辑  收藏  举报