Map

Map用于保存具有映射关系的数据,所以Map集合中包含着一组数,key—value,Map中的key不允许重复,使用的是equals判断key是否相等,value允许重复。

(1)HashMap和Hashtable

Hashtable是一个古老的Map集合,在使用时通常选用HashMap,区别在于HashMap是一个线程不安全的集合类,也因此性能更高,但当有多条线程访问同一个Map对象,使用Hashtable类会更好。Hashtable不允许使用null作为key和value,而HashMap的value不受限制,只是key不能重复,所以key只能用一次null。

与HashSet类似的是HashMap如果使用可变对象作为key,并且改变了,会导致程序无法准确地访问到Map中被修改过的key

HashMap有一个子类:LinkedHashMap使用双向链表来维护元素的插入顺序。

Propertise类是Hashtable类的子类,该对象在处理属性文件时非常方便

(2)SortedMap接口和TreeMap实现类

同样使用了红黑树,从而保证有序,使得key需要实现Comparable接口

posted on 2019-12-08 21:44  LHY23  阅读(81)  评论(0)    收藏  举报