今天我们学习了Map集合,请根据自己的理解回答下面问题:
1.Map接口有什么特点,谈谈你所了解的Map实现类?
map接口是一个双列集合,其中key不允许重复,而值可以重复
Map实现类 HashMap LinkedHashMap TreeMap
HashMap :哈希表组成 无序
LinkedHashMap :哈希表加链表 他保证了元素的存储顺序
TreeMap :可以将存储的元素根据key值进行排序
2.目前为止,我们所学的遍历map集合有几种方式?
三种 :Set keySet() 返回所有的key值 在根据key获取value值
Collection Values() 返回所有的value值
Map.Entry entrySet() 返回键值对类型(内部类) 在通过此对象.getValue() .getKey()
3.请用自己的语言描述你所了解的集合体系
Collections:集合的工具类
Collection单列集合的接口,下面两个子接口 List和Set
List(有序,可重复,有索引)的实现类 ArrayList 底层数组实现,是一块连续空间,查询快,增删慢
LinkedList 底层链表实现,是一块不连续空间,查询慢,增删快
Set (无序,不可重复,没有索引) 实现类:HashSet 哈希表实现 可以存储null,无序,不可重复
HashSet的子类类 LinkedHashSet 哈希表加链表实现 保证元素存储顺序一致
TreeSet 用来对存储的元素进行排序 ,自定义类需要实现Comparable或者内部比较器
Map :双列集合接口,有键值对,互相对应,可以通过key来获取value
实现类 HashMap 存储无序,key不允许重复,value可以重复,可以存储null值,非同步
实现类 LinkedHashMap 保证元素存储顺序一致
HashTable 不可以存储null值,同步
TreeMap 对存储的key进行排序,根据算出的hash值得出存储的位置 |