Map集合:是基于键值对存储的一种方式, Map<key,value>。键值不能重复,若重复,则新的vakue会覆盖原来的value值
Map集合遍历方法(两种):
1)通过键来找到对应的值,然后输出键值对转换:keySet()方法和get()方法实现遍历
获取所有的键的集合
将所有的键的集合进行遍历,得到每一键
通过键找值就可以
2)首先获得键值对对象,然后遍历所有的键值对:Set<Map.Entry<String ,String>>
获取所有的键值对的对象
遍历所有的键值对对象,得到每一个键值对
HashMap:基于哈希表的 Map 接口的实现,并允许使用 null 值和 null 键。它保证键值的唯一性但它不保证该顺序恒久不变。
HashMap需要重写hasCode()方法和equals()方法
LinkedHashMap:是Map 接口的哈希表和链表实现,具有可预知的迭代顺序
哈希表:保证元素唯一性,针对键有效
链表:保证元素存储和取出是一致的.(有序性)
TreeMap基于红黑树,不同步,意味着数据不安全,效率高,不能保证迭代顺序的恒久不变
TreeMap的排序与TreeSet类似:
1)自然排序:实现Comparable()接口,重写compareTo()方法
2)比较器排序:实现Comparator()接口,重写compare()方法
A)new MyComparator()
B)匿名内部类方法:new Comparator()
Map集合遍历方法(两种):
1)通过键来找到对应的值,然后输出键值对转换:keySet()方法和get()方法实现遍历
获取所有的键的集合
将所有的键的集合进行遍历,得到每一键
通过键找值就可以
2)首先获得键值对对象,然后遍历所有的键值对:Set<Map.Entry<String ,String>>
获取所有的键值对的对象
遍历所有的键值对对象,得到每一个键值对
用键值对找键和值
HashMap:基于哈希表的 Map 接口的实现,并允许使用 null 值和 null 键。它保证键值的唯一性但它不保证该顺序恒久不变。
HashMap需要重写hasCode()方法和equals()方法
LinkedHashMap:是Map 接口的哈希表和链表实现,具有可预知的迭代顺序
哈希表:保证元素唯一性,针对键有效
链表:保证元素存储和取出是一致的.(有序性)
TreeMap基于红黑树,不同步,意味着数据不安全,效率高,不能保证迭代顺序的恒久不变
TreeMap的排序与TreeSet类似:
1)自然排序:实现Comparable()接口,重写compareTo()方法
2)比较器排序:实现Comparator()接口,重写compare()方法
A)new MyComparator()
B)匿名内部类方法:new Comparator()