黑马程序员技术交流社区
标题:
【厦门JavaEE9期——每日总结】集合第三天
[打印本页]
作者:
厦门校区
时间:
2019-7-28 20:48
标题:
【厦门JavaEE9期——每日总结】集合第三天
1.Map接口有什么特点,谈谈你所了解的Map实现类?
2.目前为止,我们所学的遍历map集合有几种方式?
3.请用自己的语言描述你所了解的集合体系
作者:
谢黄
时间:
2019-7-28 21:39
1.Map接口有什么特点,谈谈你所了解的Map实现类?
特点: 1、元素存取是无序的 2、一个键对应一个值
3、键值对是映射的关系 4、键不能重复,值可以重复
Map实现类:HashMap 该实现提供了所有可选的映射关系,并允许null值和null密钥
TreeMap 一个基于红黑树的NavigableMap实现。 该地图根据其键值的natural ordering或地图创建时提供
的Comparator进行排序,具体取决于使用的构造函数
2.目前为止,我们所学的遍历map集合有几种方式?
两种:根据键找值:
1、获取该MAP集合中的所有键
2、遍历该set集合,每获取一个键,就通过该键获取对应的值
通过映射关系获取:
1、县调用entrySet()方法,获取到集合的映射关系duixiag,该对象是一个内部接口实现 类对象,包含了键和值的信息
2、调用该对象中的两个方法,获取键和值
K getKey()返回与此项对应的键
V getValue()返回与此项对应的值
3.请用自己的语言描述你所了解的集合体系
集合 单列集合继承 collection接口
然后分
1、list接口 具有可重复 、存储有序、有索引值 特点
2、set接口 具有不可重复 、存储无序、无索引值 特点
双列集合 Map
通过map集合获取对应的键值对
一种是键找值 另一种是通过映射关系找键值对
特点
1、元素存取是无序的 2、一个键对应一个值
3、键值对是映射的关系 4、键不能重复,值可以重复
作者:
闵逢雨
时间:
2019-7-28 21:57
1.Map接口有什么特点,谈谈你所了解的Map实现类?
Map接口都是以Key,value关系存储的,一一对应,且Key不能重复,无序,无索引。
1.hashMap是不能使用迭代器和增强for循环直接去遍历的。
2.hashMap的底层是hash表,类似于hashSet。只不过hashSet是单层列表,而Map集合是Key和Value采用映射关系储存的列表。
3.hashMap也是存取无序的,无索引,键不能重复,每个键只能映射一个value。
2.目前为止,我们所学的遍历map集合有几种方式?
两种。
一种keySet,获取所有键的Set集合,再遍历所有键的集合,使用Map集合的V get(int index)方法区得到值,完成遍历。
第二种entrySet,获取所有键和值的映射关系集合,调用Map中的Set(Map.Entry<K key,V value>) entrySet方法,获得所有键值的映射关系,再使用增强for循环遍历此Set集合,得到映射关系,再使用K getkey()和V getValue()方法获得键和值。
3.请用自己的语言描述你所了解的集合体系
单列集合的老祖宗是Collection接口,在此接口中只有没有索引的方法。
下一层分别由Set接口,List接口。
Set接口的子类大多数是无序,无索引,不可重复单列集合的父类,它的子类都没有索引。
它的子类有hashSet无序,无索引不可重复。底层是数组和链表组合,当链表上的元素超过8个时,链表会重构为红黑树。
TreeSet有序集合使用TreeSet集合必须定义排序规则,无索引,不可重复。.....
List接口的子类是有序,有索引,可重复的单列集合的父类,它的子类都有索引。
子类LinkedList-增删快查询慢,由于地址空间不连续,所以查找慢,但是由于是链表结构所以增删快。
子类ArrayList-增删慢查询快,底层是数组,由于地址空间连续,所以查找快,同样由于是数组增删慢。
双列集合的父类Map接口,所有实现Map接口的子类都是以Key,Value形式存储的。
子类hashMap,键和值是一一对应的关系,键不可重复,集合无序,Map集合无索引,不能直接使用增强for循环。
作者:
郭伟达
时间:
2019-7-28 22:00
1.Map接口有什么特点,谈谈你所了解的Map实现类?
(1)键和值是一一对应的
(2)键不可以重复,值可以重复,重复的值会替换这个键原来的值
(3)存取无序
如果我们想要保证元素的唯一性的时候就必须重写hashCode和equals两个方法
2.目前为止,我们所学的遍历map集合有几种方式?
两种方式
(1)根据键找值:
【1】先调用 keyset()方法,获取到键的Set集合
【2】遍历Set集合,获取到集合的每个键
【3】调用get(K k),通过键获取对应的值
(2)映射关系遍历
【1】调用entrySet()方法,获取映射对象
【2】获取这对象的映射关系
【3】遍历集合调用getKey()和getValue方法
3.请用自己的语言描述你所了解的集合体系
集合分为单列集合和双列集合
单列集合的顶层是Collection接口其子类为List接口和Set接口
List接口有ArrayList和linkedList两个实现类可以存储重复的元素底层是数组
Set接口,元素不可重复,无索引值,存取无序,底层是哈希表
双列集合目前连接到的有Map集合,HashMap有键和值,键不可重复,值可以重复
作者:
黄礼泽
时间:
2019-7-28 23:59
1.Map接口有什么特点,谈谈你所了解的Map实现类?
特点:
1.键值映射关系,一一对应。
2.无索引
3.键不可以重复,值可以重复
4.存取无序。
Map的实现类HashMap,以键值对的形式存在,存取无序.
2.目前为止,我们所学的遍历map集合有几种方式?
两种方式:
【1】通过HashMap方法keySet()获取所有的键对象形成一个Set集合,在通过增强for循环遍历出每个键,
再通过HashMap的get()传入键的方式获取到所有值。
【2】通过HashMap的enteySet获取所有的键值对象形成一个Set集合,
再通过for循环和getKey和getValue方法获取到所有的键和值。
3.请用自己的语言描述你所了解的集合体系
集合分为单例集合和双列集合
单列集合分为LIst集合和Set集合,List集合可出现重复元素,存取有序,有索引,Set集合与它相反。
双列集合为Map集合,特点为键值映射关系,无索引,键不可以重复,值可以重复,存取无序。
作者:
甘辉鸿1
时间:
2019-7-30 09:27
1.Map接口有什么特点,谈谈你所了解的Map实现类?
一个键对应一个值,同时值可以重复键不能重复,元素存取无序。
要保证元素不重复就要重写equals()和hashcode()方法。
2.目前为止,我们所学的遍历map集合有几种方式?
有两种方式。一是用keySet()获取所有键,用增强for遍历每一个键,用get方法键找值。二是用entrySet()获取所有键值对对象,同时增强for得到每一个键值对对象后用getKey()和getValuee()得到结果。
3.请用自己的语言描述你所了解的集合体系
集合分为单列集合和多列集合。
其中list集合为单列集合,特点是有索引,可以重复,元素存取无序;set集合的特点与list集合相反,无索引,不可以重复,元素存取无序。
多列集合为map集合,其储存一对键值对,其特点是键值对映射关系;一个键对应一个值;键不能重复,值可以重复;元素存取无序。
作者:
A09赵鹏
时间:
2019-7-30 09:57
1.Map接口有什么特点,谈谈你所了解的Map实现类?
(1)存储无序
(2)无所引
(3)键不能重复,值可以重复
(4)键和值一一对应
Map集合实现类HashMap,底层是哈希表,保证键的唯一性和元素存取无序。
2.目前为止,我们所学的遍历map集合有几种方式?
有2种方式
(1)调用keySet()方法,得到集合中所有键,然后再遍历集合中的键,通过键得到集合中所有的值
(2)调用entryset()方法,得到集合所有的键值对对象,然后遍历键值对,通过getkey()和getvaule()方法得到键和值
3.请用自己的语言描述你所了解的集合体系
(1)集合分为单列集合Collection和双列集合Map。
(2)Collecton集合下包含List集合和Set集合,Map集合下包含了HashMap集合
(3)List集合下包含ArrayList集合和LinkedList集合
(4)Set集合包含了HashSet和TreeSet集合
List集合特点可重复,存取有序,有索引,Set集合特点正好相反。
Map集合特点无所引,存取无需,键值一一对应,键不能重复、值可以重复。
作者:
何洪斌
时间:
2019-7-30 11:40
1.Map接口有什么特点,谈谈你所了解的Map实现类?
Map接口是一种双列集合。
特点:(1)键值一一对应
(2)无索引值
(3)键不可重复,值可以重复
(4)存取无序
Map实现类:
(1)HashMap 底层是Hash表,保证键值存取的唯一性。
(2) TreeMap 可以对键值按照一定顺序进行排序
2.目前为止,我们所学的遍历map集合有几种方式?
遍历方式两种:(1)调用keySet()方法获取集合中所有的键的set集合,遍历键集合获取对应的键,利用键得到值
(2)调用entryset()方法获取所有键值对象的集合,遍历集合获取对应的对象,利用对象调用getKey() 和getValue方法获取键和值。
3.请用自己的语言描述你所了解的集合体系
集合分为单列集合和双列集合:
单列集合:是Collection类的子类,分为List和Set,list下面有子类ArrayList和LinkedList,Set下面有子类HashSet和TreeSet
双列集合:属于Map集合接口的实现类,有HashMap和TreeMap
作者:
柠好
时间:
2019-7-30 16:28
1.Map接口有什么特点,谈谈你所了解的Map实现类?
(1)Map集合的特点
【1】键值对映射关系
【2】一个键对应一个值
【3】键不能重复,值可以重复
【4】元素存取无序
(2)Map实现类 HashMap
【1】HashMap继承了Map接口 ,所以HashMap能够调用Map中的方法
【2】HashMap的键,底层是哈希表,特性就是存取无序、不可重复、无索引值
【3】作为值的类,因为不要求唯一,所以类可以不重写hashCode和equals方法;
而作为键的类,因为要保证唯一性,必须重写hashCode和equals这两个方法
2.目前为止,我们所学的遍历map集合有几种方式?
(1)第一种
【1】获取所有键的集合,用keySet()方法实现
【2】遍历键的集合,获取到每一个键,用增强for实现
【2】根据键去找值,用get(Object key)方法实现
(2)第二种
【1】获取所有键值对对象的集合,用entrySet()实现
【2】遍历键值对对象的集合,得到每一个键值对对象
【3】根据键值对对象获取键和值,用getKey()得到键,用getValue()得到值
3.请用自己的语言描述你所了解的集合体系
集合类体系结构:
【接口】 --> [ 实现类 ]
(共性) --> { 特性 }
【1】单列:Collection (无索引值方法)
【1】List(存取有序、有索引值、可重复)
[1] ArrayList {底层是数组,查询快、增删慢}
[2] LinkedList {底层是链表,查询慢、增删快}
【2】Set(存取无序、无索引值、不可重复)
[1] HashSet {底层哈希表}
[1] LinkedHashSet {存取有序}
[2] TreeSet {基于红黑树,对元素进行排序:自然排序、自定义比较器排序}
【1】双列:Map(存取无序、无索引值、键不能重复,值可以重复、一个键对应一个值)
[1] HashMap {哈希表只对键生效}
[1]LinkedHashMap {存取有序}
[2] TreeMap {基于红黑树,对元素进行排序:根据键的自然顺序排序、自定义比较器排序}
——张柠
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2