1.集合: 双列集合Map
1.Map:
1.特点:
键是唯一的,所有的特点都是针对键的.值可以重复.
2.常用方法:
put(key,value)
remove(key)
clear()
isEmpty()
size()
containsKey()
containsValue()
values()
get(key)
keySet()
entrySet()
3.Map 集合遍历
1.通过keySet方法得到所有键的Set集合,
遍历这个Set集合得到每一个key,
再通过get(key)这个方法得到对应的值.
2.通过entrySet方法得到键值对对象(Entry对象)的一个Set集合,
遍历这个Set集合,得到每一个Entry对象,
通过Entry对象中的getKey()得到键,
通过Entry对象中的getValue()得到值.
4.HashMap:
存储自定义对象作为key,需要重写hashCode和equals方法.
5.LinkedHashMap:
怎么存就怎么取,有序的.
6.TreeMap:
可以对key进行排序
1.自然排序(让key实现Comparable接口,重写compareTo方法)
2.比较器排序,跟TreeSet集合的写法一样.
7.HashMap和Hashtable有什么区别?
1.线程安全问题:
Hashtable是线程安全的,效率低
HashMap是线程不安全的,效率高
2.HashMap可以存储null键和null值
Hashtable不可以存储null键和null值.
|