/* * Map 主要用于存储健值对,根据键得到值,因此不允许键重复(重复了覆盖了),但允许值重复。 * * HashMap :根据键的HashCode 值存储数据,根据键可以直接获取它的值,具有很快的访问速度, * 遍历时,取得数据的顺序是完全随机的。 * HashMap最多只允许一条记录的键为Null;允许多条记录的值为 Null * TreeMap :根据键排序,默认是按键值的升序排序,也可以指定排序的比较器, * 当用Iterator 遍历TreeMap时,得到的记录是排过序的。 * **/
//实现接口对象,定义key的排序顺序
//默认key升序,等同 o1.compareTo(o2);降序 return -o1.compareTo(o2);
//如果key是对象 ,该类必须重写 equail(),hashCode()方法
private TreeMap<Integer, RequestCallback> treeMap1
= new TreeMap<>(new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return o1.compareTo(o2);
}
});
//map 可转 Set对象
//map 没有迭代
Set<Integer> keySet = map.keySet();
Set<Map.Entry<Integer, RequestCallback>> entrySet = map.entrySet();