本帖最后由 朱铭恺 于 2019-6-22 21:35 编辑
1.Map接口有什么特点,谈谈你所了解的Map实现类?
特点:
- 双列集合,键值对存在映射关系
- 一个键对应一个值
- 键不能重复,值可以重复
- 元素存取无序
Map的实现类有:
HashMap:底层为哈希表,元素存取无序,可存储null,键不可重复;其下有LinkedHashMap实现类,是有序的。
TreeMap:元素是可以进行排序的,拥有自然排序和自定义排序两种方法(使用Comparator比较器进行比较排序)
2.目前为止,我们所学的遍历map集合有几种方式?
两种,
一是通过keySet()方法得到键的集合,再通过遍历键的集合找到相应值(通过丈夫找妻子方法)
二是通过entrySet()方法得到键值的对象集合,再通过遍历键值对象集合找到所有对象,再通过调用get()方法得到键和值(结婚证找丈夫妻子方法)
3.请用自己的语言描述你所了解的集合体系
集合分为单列集合(Collection)和双列集合(Map)
Collection下有List和Set
List特点:
-存取有序
-元素可重复
-有索引值
List下有:
ArrayList:底层数据结构是数组,查询快,增删慢
LinkedList:底层数据结构是链表,查询慢,增删快。
Set特点:
-无序
-元素不可重复
-无索引值
Set下有:
HashSet:无序,底层是HashMap,HashMap底层是哈希表/红黑树
TreeSet:有序,拥有自然排序和自定义排序两种方法(使用Comparator比较器进行比较排序)
Map特点:
- 双列集合,键值对存在映射关系
- 一个键对应一个值
- 键不能重复,值可以重复
- 元素存取无序
Map下有:
HashMap:底层为哈希表,元素存取无序,可存储null,键不可重复;其下有LinkedHashMap实现类,是有序的。
TreeMap:元素是可以进行排序的,拥有自然排序和自定义排序两种方法(使用Comparator比较器进行比较排序) |