黑马程序员技术交流社区
标题: 【厦门校区JavaEE就业3期-每日总结】Map [打印本页]
作者: 厦门校区 时间: 2018-8-15 19:04
标题: 【厦门校区JavaEE就业3期-每日总结】Map
今天我们学习了Map集合,请根据自己的理解回答下面问题:
1.Map接口下有几个子类,各自有什么特点?
2.目前为止,我们所学的遍历map集合有几种方式?
3.请用自己的语言描述你所了解的集合体系
作者: 黄艺纯 时间: 2018-8-15 19:43
本帖最后由 黄艺纯 于 2018-8-18 21:36 编辑
1.Map接口下有几个子类,各自有什么特点?
LinkedHashMap:1、保存了记录的插入顺序。
2、哈希表和链接列表实现。
3、不是同步的。
HashMap:1、底层也是哈希表数据结构,此集合线程是不同步 效率高。
2、允许使用 null 值和 null 键。
Hashtable:1、底层数据结构是是哈希表结构,该集合是线程同步的,效率低。
2、key和value不能为null。
TreeMap:1、底层是二叉树数据结构,线程不同步,可以用于给Map集合中的键进行排序 。
2、不是同步的。
2.目前为止,我们所学的遍历map集合有几种方式?
四种:
1、通过Map.keySet遍历key和value
2、通过Map.entrySet使用迭代器遍历key和value
3、通过Map.entrySet使用增强for循环遍历key和value
4、通过Map.values遍历所有的value,但是不能遍历key
3.请用自己的语言描述你所了解的集合体系
集合的由来:
面向对象语言对事物都是以对象的形式来体现,为了方便对多个对象的操作,就需要将对象进行存储,集合就是存储对象最常用的一种方式。
集合特点:
1、用于存储对象的容器。(容器本身就是一个对象,存在于堆内存中,里面存的是对象的地址)
2、集合的长度是可变的。
3、集合中不可以存储基本数据类型值。(只能存对象)
Collection子接口以及常用实现类:
Collection接口
List接口:有序(存入和取出的顺序一致),元素都有索引(角标),元素可以重复。
Vector:内部是数组数据结构,是同步的。增删,查询都很慢!(几乎不用了)
ArrayList:内部是数组数据结构,是不同步的。替代了Vector,查询的速度快,增删速度慢。(查询时是从容器的第一个元素往后找,由于数组的内存空间是连续的,所以查询快;增删的话所有元素内存地址都要改变,所以增删慢。)
LinkedList:内部是链表数据结构,是不同步的。增删元素的速度很快。(同理,链表的内存空间是不连续的,所以查询慢;增删时只需改变单个指针的指向,所以快;)
Set接口:无序,元素不能重复。Set接口中的方法和Collection一致。
HashSet: 内部数据结构是哈希表,是不同步的。
LinkedHashSet:内部数据结构是哈希表和链表,是有顺序的HashSet。
TreeSet:内部数据结构是有序的二叉树,它的作用是提供有序的Set集合,是不同步的。
List接口:
有一个最大的共性特点就是都可以操作角标,所以LinkedList也是有索引的。list集合可以完成对元素的增删改查。
Set和List的区别:
1. Set 接口实例存储的是无序的,不重复的数据。List 接口实例存储的是有序的,可以重复的元素 <最本质区别>。
2. Set检索效率低下,删除和插入效率高,插入和删除不会引起元素位置改变。
3. List和数组类似,可以动态增长,根据实际存储的数据的长度自动增长List的长度。查找元素效率高,插入删除效率低,因为会引起其他元素位置改变。
Map子接口以及常用实现类:
Map:一次添加一对元素,Collection 一次添加一个元素。
Map也称为双列集合,Collection集合也称为单列集合。
其实map集合中存储的就是键值对,map集合中必须保证键的唯一性。
Map常用的子类:
Hashtable :内部结构是哈希表,是同步的。不允许null作为键,null作为值。
Properties:用来存储键值对型的配置文件的信息,可以和IO技术相结合。
HashMap : 内部结构是哈希表,不是同步的。允许null作为键,null作为值。
LinkedHashMap:内部结构是哈希表和链表,不是同步,具有可预知的迭代顺序。
TreeMap : 内部结构是二叉树,不是同步的。可以对Map集合中的键进行排序。
作者: 张煜兴 时间: 2018-8-15 20:02
本帖最后由 张煜兴 于 2018-8-16 09:16 编辑
1.Map接口下有几个子类,各自有什么特点?
Map存储Key和Value两个对象,Key唯一,对应一个Value值,
HashMap:无序存储,key和value可以null
LinkedHashMap:多一条链表记录顺序,有序,key和value可以null
HashTable:存储的两个对象不能为null
2.目前为止,我们所学的遍历map集合有几种方式?
两种,可以通过KeySet:对Set集合用此方法,获得Key的set集合,再根据这个set集合遍历,用get(Key)方法间接获取value
EntrySet遍历:用此方法获取键值对的set集合,再根据键值对的get方法获取Key和Value
3.请用自己的语言描述你所了解的集合体系
单列集合:Collection(没有索引)包含List(有序,有索引,元素可重复,可以普通for循环)和Set(无序,无索引,元素不重复,不能普通for循环)
双列集合:Map(Key,Value)包含HashMap(无序)和LinkedHashMap(有序),可以增强for循环和迭代器循环,两种遍历方式
作者: 陈张辉 时间: 2018-8-15 20:05
1.Map接口下有几个子类,各自有什么特点?
HashMap: 无序(存取没顺序)
LinkedHashMap:有序(存取有顺序)
Hashtable :最早的双列集合 线程安全 用法和HashMap差不多
Properties :唯一和IO流结合的集合
2.目前为止,我们所学的遍历map集合有几种方式?
keySet()
entrySet()
values() 返回一个List集合 存放value
3.请用自己的语言描述你所了解的集合体系
单列集合:List:ArrayList,Vector,LinkedList
Set: HashSet,LinkedHashSet,TreeSet
双列集合:Map:HashMap,LinkedHashMap,Hashtable(继承了dictionary )其子类Properties 是唯一和IO结合的集合
作者: sulaymanfan 时间: 2018-8-15 20:12
标题: yefan
本帖最后由 sulaymanfan 于 2018-8-16 08:59 编辑
1.Map接口下有几个子类,各自有什么特点? map 类下有狠多类,常用的有两个:
- hashmap 无序,键不能重复 底层是一个哈希表,是一个线程不安全的集合,是多线程集合,速度快
- linkedhasmap 有序,键不能重复 底层是一个哈希表,是一个线程不安全的集合,是多线程集合,速度快
2.目前为止,我们所学的遍历map集合有几种方式?
有三种, 对于有索引值得可以使用三种,普通for循环, 增强for 和迭代器
如果集合没有索引值可以使用增强for和迭代器.
3.请用自己的语言描述你所了解的集合体系
Java中集合类定义主要是java.util.*包下面,常用的集合在系统中定义了三大接口,这三类的区别是:
- java.util.Set接口及其子类,set提供的是一个无序的集合;
- java.util.List接口及其子类,List提供的是一个有序的集合;
- java.util.Map接口及其子类,Map提供了一个映射(对应)关系的集合数据结构;
每种集合,都可以理解为用来在内存中存放一组对象的某种”容器“---就像数组.
作者: 罗建辉 时间: 2018-8-15 20:20
1.Map接口下有几个子类,各自有什么特点?
HashMap:存储数据采用的哈希表结构,元素的存取顺序不能保证一致。由于要保证键的唯一、不重复,需要重写键的hashCode()方法、equals()方法。
LinkedHashMap:存储数据采用的哈希表结构+链表结构。通过链表结构可以保证元素的存取顺序一致;通过哈希表结构可以保证的键的唯一、不重复,需要重写键的hashCode()方法、equals()方法。
2.目前为止,我们所学的遍历map集合有几种方式?
第一种:通过keySet()方法得到key的set集合,然后通过get()方法得到key对应的value值.
第二种:通过entrySet()方法,得到map集合的键值对对象,然后通过getKey()与getValue()方法,得到key值与value值.
第三种:通过values()方法,得到值得collection集合.
3.请用自己的语言描述你所了解的集合体系
list集合:是collection接口的子接口,其常用的实现类有ArrayList,LinkedList,其特点是该集合的元素有序且允许重复.
set集合:实现类有HashSet,LinkedHashSet,TreeSet,特点是存到该集合元素不允许重复,且无序.(LinkedHashSet元素不允许重复,但元素有序).
map集合:该集合存储的元素是一对的形式,其实现类有,HashMap,LinkedHashMap,存到集合中的key值要保证唯一性,存到集合中value允许重复,其中key与value的关系是唯一对应的,每个key唯一对应一个values.
作者: weimengchao 时间: 2018-8-15 20:21
1.Map接口下有几个子类,各自有什么特点?
HashMap元素无序,允许键值为null
TreeMap元素有序,查找速度快,不可以有null
2.目前为止,我们所学的遍历map集合有几种方式?
map.entrySet()
map.keySet()
map.value()
3.请用自己的语言描述你所了解的集合体系
存储对象的容器
危mengchao
作者: 谢君昇 时间: 2018-8-15 20:31
1.Map接口下有几个子类,各自有什么特点?常用的有HashMap<k,v>,LinkedHasdMap<k,v>
前者无序后者有序
2.目前为止,我们所学的遍历map集合有几种方式?
键找值法;键值对对象法;
3.请用自己的语言描述你所了解的集合体系
分为单列集合和双列集合两种。
作者: liebstch 时间: 2018-8-15 20:35
陈建秋
1.Map接口下有几个子类,各自有什么特点?
HashMap:(1)存储数据采用的哈希表结构,元素的存取顺序不能保证一致,允许null key和null value(2) 线程不同,速度快,步不安全 LinkedHashMap:(1)存储数据采用哈希表结构加链表,元素存储有序,允许null key和null value(2) 线程不同,速度快,步不安全
HashTable :(1)键与值不能为空(2)Hashtable是同步的,线程安全,速度慢。
2.目前为止,我们所学的遍历map集合有几种方式?
(1)keySet();
(2)entrySet();
(3)values();
3.请用自己的语言描述你所了解的集合体
集合
单列集合 双列集合
Collection (无索引) Map(键唯一)
List (有序,可重复) set (无序,唯一) HashMap
ArrayList HashSet LikedHashMap
LinkedList LinkedHashSet Hashtable
Vector TreeSet
作者: 丶黑白 时间: 2018-8-15 20:36
本帖最后由 丶黑白 于 2018-8-16 09:00 编辑
余志斌
1.Map接口下有几个子类,各自有什么特点?
Map集合下有HashMap和LinkedHashMap两个子类
LinkedHash是以HashMap+链为底层,链用来保证顺序。
2.目前为止,我们所学的遍历map集合有几种方式?
2种,通过keySet方法返回key的set集合
和通过entrySet方法获得键对封装后的对象的集合。
3 集合分单列集合Collection和双列集合Map。
Collection包含Set以及List
Set包含 hashSet/treeSet/LinkedHashSet
List包含 ArrayList/Vectoy/LinkList
作者: 郭生发 时间: 2018-8-15 20:36
1.Map接口下有几个子类,各自有什么特点?
HashMap,存储结构为哈希表结构,元素的存取顺序不能保证一致,要保证键值唯一,要重写Hash()和equals()方法
LinkedHashMap,存储结构为哈希表+链表结构,元素的存取顺序相同,也要重写Hash()和equals()方法
2.目前为止,我们所学的遍历map集合有几种方式?
3种方式;通过keyset()方法;
entryset()方法;
value()方法;
3.请用自己的语言描述你所了解的集合体系
Collection集合 有常用子类List(List子类ArrayList、LinkedList),Set(Set子类HashSet->LinkedHashSet)
List集合有序有索引可重复,Set集合无序无索引不可重复。
Map集合 有常用子类HashMap->LinkedHashMap
均要保持键的唯一性,重写键hashCode()方法、equals()方法。 其中HashMap存取顺序不同,LinkedHashMap存取顺序相同。
作者: ZNBran 时间: 2018-8-15 20:41
1Map接口下有HashMap<K,V>,LinkedHashMap<K,V>,Hashtsble<K,V>等类
HashMap<K,V>特点:结构为数组加单向链表,集合底层是哈希表,查询速度快,是一个无序集合。
LinkedHashMap<K,V>特点:底层是哈希表加链表可以保证迭代顺序,是一个有序集合。
Hashtsble<K,V>特点:底层是哈希表,单线程,速度慢,在1.2版本后被HashMap替代。
2.两种方式遍历Map集合。
第一种是用keySet()方法获取Map集合中的key存放到一个Set集合中,再遍历集合通过key找到value值。
第二种是用entrySet()方法获取Map集合内多个Entry对象,把它们保存到Set集合中,遍历集合
使用Entry中的方法getKey()和getValue()获取键与值。
3集合体现分为单列集合体现和双列集合体系,单列集合体系可以直接遍历集合获取集合中元素
双列集合存储数据方式和单列集合不同分为键和值,两个数据直接一一对应,键的值是唯一的
可以通过把双列集合中的键值取出用单列集合进行遍历从而获得键对应的值。
----------------------------------------------------------------------------------------------周楠
作者: 林胜强 时间: 2018-8-15 20:52
1.Map接口下有几个子类,各自有什么特点?
HashMap 存储数据采用的哈希表结构,元素的存取顺序不能保证一致
LinkedHashMap 存储数据采用的哈希表结构+链表结构。通过链
表结构可以保证元素的存取顺序一致
2.目前为止,我们所学的遍历map集合有几种方式?
两种 keyset entryset
3.请用自己的语言描述你所了解的集合体系
单列集合collection 双列集合Map
作者: 李伟javaee03 时间: 2018-8-15 20:53
1.Map接口下有几个子类,各自有什么特点?
HashMap: 底层是哈希表,多线程,线程不安全,速度快,能存储null值,null键
LinkHashMap:相对于HashMap保证的存取的有序性
Hashtable:底层为哈希表,单线程,线程安全,速度慢,不能存储null值null键
2.目前为止,我们所学的遍历map集合有几种方式?
keyset : 使用“键找值”的方式遍历map集合
entrySet: 使用“键值对”的方式遍历map集合
3.请用自己的语言描述你所了解的集合体系
单列集合:Collection
Collection包括List集合和Set集合,List集合有序有索引值允许重复元素。Set集合不一定为有序集合,无索引值,元素不允许重复用增强for或迭代器进行遍历。
双列集合:Map 元素成对出现,map中的键唯一,值可以重复,键值一一对应,用keySet和entrySet进行遍历。
作者: 练志成 时间: 2018-8-15 20:56
今天我们学习了Map集合,请根据自己的理解回答下面问题:
1.Map接口下有几个子类,各自有什么特点?
两个,
一个底层是哈希表,查询速度快,无序的。
一个底层是哈希表加链表,是有序的
2.目前为止,我们所学的遍历map集合有几种方式?
两种
一种keyset遍历
一种Entry对象遍历
3.请用自己的语言描述你所了解的集合体系
适用性可以,不过到现在还记得当初学习学习第一个集合的时候,貌似说过能用数组建议尽量不用集合编写程序
作者: 吴鑫佳 时间: 2018-8-15 21:00
1.Map接口下有几个子类,各自有什么特点?
有多个子类,比如HashMap,和LinkedHashMap,HashMap存储数据采用的哈希表结构,元素的存取顺序不能保证一致查询快但无序,LinkedHashMap存储数据采用的哈希表结构+链表结构,保证元素的存取顺序一致,同时也保证了键的唯一、不重复。查询较HashMap慢了一点,但有序。
2.目前为止,我们所学的遍历map集合有几种方式?
两种,一种为public Set<K> keySet() : 获取Map集合中所有的键,在通过map.get(key)获取value的值。另一种为public Set<Map.Entry<K,V>> entrySet() : 获取到Map集合中所有的键值对对象的集合(Set集合),通过遍历集合获取成员变量,用getkey()和getvalue()得到对应的key和value。
3.请用自己的语言描述你所了解的集合体系
集合分为单列集合的collection集合和双列map集合,单列集合collection有分为list集合和set集合,list集合有序,有索引,可重复,set集合无序,无索引,不可重复。list集合可进行排序。Set集合可获得唯一性元素。
Map集合有键值对,是一一映射关系,键是唯一的,并且有唯一对应的值,值对应的键就不一定唯一。有键维护之间的关系。
作者: 黄伟佳 时间: 2018-8-15 21:03
1.Map接口下有几个子类,各自有什么特点?
HashMap:存取顺序不能一致,保证唯一不重复
LinkedHashMap:存取顺序一致,保证唯一不重复
2.目前为止,我们所学的遍历map集合有几种方式?
entryset方法
keyset方法
3.请用自己的语言描述你所了解的集合体系
集合分为单元集合和双元集合
单元集合又有Lise接口和Set接口,Set接口没有索引值,需要重写保证唯一性,这一点和双元Map接口很像。
双元集合一个对象有两个值。一个是Key键,类似于索引,唯一性和不能重复,然后每一个Key键都有对应的
一个Value值,Value是可以重复的,
作者: Michcale 时间: 2018-8-15 21:04
---------------吴齐宾--------------------------
1.Map接口下有几个子类,各自有什么特点?
1)HashMap :不能保证顺序一致
2)LinkedHashMap 保证了存入和取出的顺序是一致的
2.目前为止,我们所学的遍历map集合有几种方式?
1)迭代器
2)增强for循环
3.请用自己的语言描述你所了解的集合体系
集合分为两大类 Collection为超类的单线程集合,含有list和set集合!
Map为超类的双线橙集合.主要代表类HashMap和LinkedHashMap
作者: 迪亚波罗 时间: 2018-8-15 21:05
1。HashMap 底层有哈希值构成,是一个线程不安全集合,特点是多线程,速度快
LinkedHashMap哈希值+链表构成,特点是保证存取数据顺序一致
Hashtable底层由哈希值构成,是一个线程安全集合,特点是单线程,速度慢
2.keyset: 使用"键找值"遍历map集合 entrySet: 使用"键值对"方式遍历map集合
3.单列集合Collection List允许有序和重复 Set不一定为有序,需要靠迭代器遍历
双列集合Map 键唯一,值可以重复 ,一个键对应一个值
孙享
作者: 苏华琛 时间: 2018-8-15 21:05
今天我们学习了Map集合,请根据自己的理解回答下面问题:
1.Map接口下有几个子类,各自有什么特点?
有HashSet和LinkedHashSet
2.目前为止,我们所学的遍历map集合有几种方式?
Keyset和Entry
3.请用自己的语言描述你所了解的集合体系
Map是一个双列集合,里面的key是惟一的,值可以有重复,内容排列需要有序的话可以用LinkedSet方法
作者: 刘建宝 时间: 2018-8-15 21:06
1.Map接口下有几个子类,各自有什么特点?
HashMap子类接口:HashMap集合底层是哈希表:查询的速度特别的快,是一个无序的集合,存储元素和取出元素的顺序有可能不一致
数组+单向链表|红黑树(链表的长度超过8):提高查询的速度
LinkedHashMap子类接口:底层是哈希表+链表(保证迭代的顺序),是一个有序的集合,存储元素和取出元素的顺序是一致的
Hashtable:实现一个哈希表,该哈希表将键映射到相应的值。任何非 null 对象都可以用作键或值
2.目前为止,我们所学的遍历map集合有几种方式?
1.keySet(); 键对值
2.entrySet();键值对
3.请用自己的语言描述你所了解的集合体系
以Collection为顶层接口的单列集合,又分List 和 Set 两大体系,区分有无索引,元素重复
以Map为顶层接口的双列集合,Map集合中的键值需要保证唯一;
作者: 林靖 时间: 2018-8-15 21:07
1.Map接口下有几个子类,各自有什么特点?
HashMap:哈希表结构 存取顺序不一致
LinkedHashMap:哈希表加链表结构 存取顺序一致
2.目前为止,我们所学的遍历map集合有几种方式?
keySet键找值
entrySet键值对
3.请用自己的语言描述你所了解的集合体系
Collection 单列集合 有list接口 元素可重复 有序 Set接口 元素不能重复 无序 LinkedHashSet 元素不能重复 有序
Map 双列集合 有两个子类HashMap(无序) LinkedHashMap(有序)
作者: 铜墙铁壁花无缺 时间: 2018-8-15 21:08
=====================================余金龙============================
1.Map接口下有几个子类,各自有什么特点?HashMap: 是map接口的一个实现类,它用于存储键值的映射关系,但是必须保证不出现重复的键,底层是哈希表,多线程,线程不安全,速度快,能存储null值,null键
LinkHashMap:相对于HashMap保证的存取的有序性
Hashtable:底层为哈希表,单线程,线程安全,速度慢,不能存储null值null键
2.目前为止,我们所学的遍历map集合有几种方式?
1 keyset : 使用“键找值”的方式遍历map集合
2 entrySet: 使用“键值对”的方式遍历map集合
3 getValue值获得值单列
3.请用自己的语言描述你所了解的集合体系
答:集合按照其存储的数据结构可以分为两大类。即单列集合类Collection和双列集合Map,这两种集合的特点具体如下:
collection:单列集合类的根接口,用于存储一系列的单列符合某种规则的元素,它有两个重要的子接口,分别是List和set。其中List的特点是元素有序,元素可重复
Map:是双列集合类接口,用于存储具有键值的映射关系的元素,每个元素都包含一对键值。在使用map集合的时候可以通过指定的key找到对应的value,例如根据一个学生的学号就可以找到对应学生。map接口的主要实现类有Hashmap和Treemap
|
作者: 张子建 时间: 2018-8-15 21:08
1.Map接口下有几个子类,各自有什么特点?
HashMap 存储数据采用的哈希表结构,元素的存取顺序不能保证一致
LinkedHashMap 存储数据采用的哈希表结构+链表结构。通过链表结构可以保证元素的存取顺序一致
2.目前为止,我们所学的遍历map集合有几种方式?
keyset ,entryset
3.请用自己的语言描述你所了解的集合体系
单列集合collection 双列集合Map,键唯一,值可以重复 ,一个键对应一个值
作者: 小鱼七 时间: 2018-8-15 21:09
本帖最后由 小鱼七 于 2021-9-1 17:49 编辑
1.Map接口下有几个子类,各自有什么特点?
HashMap,双列集合,储存成对的键和值,键不可以重复,值可以重复,每个键只对应一个值,储存顺序不一定一致,所以需要重写HashCode和equals方法
LinkedHashMap,比HashMap多一个链表
2.目前为止,我们所学的遍历map集合有几种方式?
(1)键找值,ksySet返回一包含所有key值的集合,遍历此集合可输出value
(2)键值对,entrySet返回一个包含所有键值对对象的集合,遍历此集合,调用getKey和getValue可得到key和value
3.请用自己的语言描述你所了解的集合体系
单列集合:Collection:Liset集合和Set结合
Liset集合(有序、有索引、可重复):ArrayList、LinkedList、Vector
Set集合(部分无序、无索引、不可重复):HashSet、LinkedHashSet(HashSet的子类、有序)
双列集合:Map:HashMap(键值对)、LinkedHashMap(多一个链表,有序的) |
|
作者: yangshixian 时间: 2018-8-15 21:10
本帖最后由 yangshixian 于 2018-8-15 22:46 编辑
1.Map接口下有几个子类,各自有什么特点?Hashtable、HashMap、TreeMap;Properties是Hashtable的子类,LinkedHashMap是HashMap的子类
HashMap的特点:双列集合、无序、键值不重复、多线程不安全
Hashtable对比HashMap,单线程安全的
2.目前为止,我们所学的遍历map集合有几种方式?
三种
一、1、调用Map对象的keySet()方法,获得放满key的Set集合;2、Set集合通过Iterate或增强for循环迭代Set集合中的每一个key,通过get(Object key)方法获得对应的值
二、1、调用Map对象的entrySet()方法,获得放满Map.Entry类的元素的Set集合,每个Map.Entry对象代表Map中的key和value对;2、Set集合通过Iterate或增强for循环迭代Set集合中的每一个entry对象,entry通过getkey和getvalue方法获得key和value
三、也可通过Collection<V> values()方法与Set keySet()配合,分别获得放满值的Collection集合与放满键的Set配合进行遍历
杨式贤
3.请用自己的语言描述你所了解的集合体系
通过单列与双列将集合分为Collection接口(单列)与Map接口(双列)
Colletion接口根据元素是否有序可重复,分为List(有序可重复)和Set(无序不可重复)两种
List根据集合底层构造,分别将底层为数组、链表的List分为ArrayList、LikedLIst,还有Vector
Set根据集合底层构造,分别将底层为哈希表,树的Set分为HashSet和TreeSet
Map根据集合底层构造,分别将底层为哈希表,树的Map分为HashMapt和TreeMap,还有一个较早的Hashtable
作者: spik 时间: 2018-8-15 21:13
1.Map接口下有几个子类,各自有什么特点?
有:HashMap,LinkedHashMap,Hashtable
HashMap:底层的数据结构的是,哈希表结构;可以有一个键为null,多个值为null。无序
LinkedHashMap:底层用的是哈希表和链表结构,使用了双重链表,数据是有序的。
Hashtable:与HashMap相同,但是数据是安全的,单线程,效率低,不能有null值
2.目前为止,我们所学的遍历map集合有几种方式?
两种方式:
“键找值”:用keySet()方法遍历set集合,set中存储的是map的所有key值,遍历set集合获取key值 通过map.get(key)获取该key对应的值。
“键值对”:用entrySet()方法,返回set集合,set中存储的是map中所有的键值对对象:Entry;遍历set集合获取到的是键值对对象,使用getkey()、getValue()分别获取键值
3.请用自己的语言描述你所了解的集合体系
集合分单列集合、双列集合。
单列集合通过实现Collection 接口 、双列集合通过实现Map接口。
集合底层数据结构有:数组结构、链表结构、红黑树结构。
双列集合是成对出现,键唯一,值可以重复。
作者: 张剑猛 时间: 2018-8-15 21:13
1.Map接口下有几个子类,各自有什么特点?
HashMap集合:无序的、键不允许重复
LinkedHashMap集合:有序的
2.目前为止,我们所学的遍历map集合有几种方式?
map.Keyset以及map.Entry两种方法
3.请用自己的语言描述你所了解的集合体系
单列集合:Collection
Collection包括List集合和Set集合,List集合有序有索引值允许重复元素。Set集合不一定为有序集合,无索引值。
双列集合:Map 元素成对出现,map中的键唯一,值可以重复,键值一一对应。
作者: MJ11 时间: 2018-8-15 21:16
1.Map接口下有几个子类,各自有什么特点?
HashMap,key值不允许重复,查询速度快,无序。存储数据采用的哈希表结构,元素的存取顺序不能保证一致。由于要保证键的唯一、不重复,需要重写键的hashCode()方法、equals()方法。
LinkedHashMap,存储数据采用的哈希表结构+链表结构。通过链表结构可以保证元素的存取顺序一致;通过哈希表结构可以保证的键的唯一、不重复,需要重写键的hashCode()方法、equals()方法。
2.目前为止,我们所学的遍历map集合有几种方式?
两种方式:使用“键找值”的方式遍历Map集合KeySet()方法
使用“键对值”的方式遍历Map集合entrySet()方法
3.请用自己的语言描述你所了解的集合体系
单列集合,单利集合Collection 中的集合,为单一元素,存储方式为一个个存储。
双列集合,元素是成对存在的,以键值对的方式出现。一个键对应一个值,值可以重复,键不能重复,通过键查找值
田浪
作者: 舟sir 时间: 2018-8-15 21:20
今天我们学习了Map集合,请根据自己的理解回答下面问题:
1.Map接口下有几个子类,各自有什么特点?Hashmap:双列集合,元素以键值对(成对)出现,键唯一,值可以重复,键值一一对应
LinkeHashMap:在HashMap的基础上增加一个链表,让集合有序;
HashTable:底层也是一个哈希表,是一个线程安全的集合,是单线程集合,速度慢;不能存储null值和键,1.2版本之后被HashMap取代;
2.目前为止,我们所学的遍历map集合有几种方式?
两种:
- 使用 “ 键找值 ”的keySet()方法获得键的集合;然后迭代器循环并获取 value 值;
- 使用entrySet()方法;获取键值对的封装对象存储的Set集合,迭代器遍历;
3.请用自己的语言描述你所了解的集合体系
由数组、哈希表和链表等数据结构组成的不同类型集合,因为使用的数据结构不同,让不同的集合之间使用起来有不一样的的特性和优缺点;
数组:有序、有索引、元素可重复
哈希表:元素不可重复;
链表:(双向)有序。
作者: 沈智桂 时间: 2018-8-15 21:21
1.Map接口下有几个子类,各自有什么特点?
hashMap 和linkedhashMap两个子类。linkedhashMap是有存取是有序的,hashmap是采用哈希表结构,不能保证存取顺序
2.目前为止,我们所学的遍历map集合有几种方式?
keyset和entryset两种方式
3.请用自己的语言描述你所了解的集合体系
单列集合collection和双列集合map。collection接口有两个子类是list和set,map集合有hashmap接口和lingkhashmap接口
作者: 舟sir 时间: 2018-8-15 21:21
今天我们学习了Map集合,请根据自己的理解回答下面问题:
1.Map接口下有几个子类,各自有什么特点?
Hashmap:双列集合,元素以键值对(成对)出现,键唯一,值可以重复,键值一一对应
LinkeHashMap:在HashMap的基础上增加一个链表,让集合有序;
HashTable:底层也是一个哈希表,是一个线程安全的集合,是单线程集合,速度慢;不能存储null值和键,1.2版本之后被HashMap取代;
2.目前为止,我们所学的遍历map集合有几种方式?
两种:
使用 “ 键找值 ”的keySet()方法获得键的集合;然后迭代器循环并获取 value 值;
使用entrySet()方法;获取键值对的封装对象存储的Set集合,迭代器遍历;
3.请用自己的语言描述你所了解的集合体系
由数组、哈希表和链表等数据结构组成的不同类型集合,因为使用的数据结构不同,让不同的集合之间使用起来有不一样的的特性和优缺点;
数组:有序、有索引、元素可重复
哈希表:元素不可重复;
链表:(双向)有序。
周家乾
作者: 黄晨伟 时间: 2018-8-15 21:23
1.Map接口下有几个子类,各自有什么特点?
HashMap存储数据采用的哈希表结构,元素的存取顺序不能保持一致。特点:多线程,查询速度快,线程不安全。
LinkedHashMap存储数据采用哈希表结构+链表结构。通过链表结构可以保证元素的存取顺序一致,通过哈希表结构可以保证键的唯一。特点:单线程,速度慢,线程安全。
2.目前为止,我们所学的遍历map集合有几种方式?
keyset和entryset
3.请用自己的语言描述你所了解的集合体系
单列集合collection
双列集合Map
作者: 陈锦祥 时间: 2018-8-15 21:23
1.Map接口下有几个子类,各自有什么特点? HashMap:存储数据采用的哈希表结构,无序的 键是唯一的 值允许重复 允许null键,null值
LinkedHashMap:map接口的哈希表 和链街列表实现 具有可预知的迭代顺序 查询快 有序
HashTable:底层为哈希表,单线程,线程安全,速度慢,不允许null键,null值
2.目前为止,我们所学的遍历map集合有几种方式?
Map集合不能直接使用迭代器或者foreach进行遍历。但是转成Set之后就可以使用了。
Set <K> keySet( ) : 获取 map集合中的所有键 存储到Set 集合 通过遍历键值Set集合 通过map集合的 get()方法 获取对应的值;
Set<Map . Entry<K,V>> entrySet( ): 获取Map 集合中 键值对 对象的集合Set 遍历Set集合 通过键值对 对象的 get方法 获取键值对对象对应的 键和 值
Entry 是 Map 的内部接口
3.请用自己的语言描述你所了解的集合体系
单列集合:Collection
List : ArrayList LinkedList Vector 有序的 有索引 元素可重复的
Set : HashSet LinkedSet TreeSet 无序的 无索引 元素唯一
双列集合:Map:1 .双列集合,元素以键值对(成对)出现 2.map集合中的键唯一,值可以重复
3. map 中的 键值 一一对应 4. 键 和值 的数据类型(泛型) 可以相同 也可以不相同
HashMap 存储数据采用的哈希表结构,元素的存取顺序不能保证一致。由于要保证键的唯一、不重复,键如果为自定义对象需要重写键的hashCode()方法、equals()方法。保证元素唯一性 允许null键,null值
LinkedHashMap:map接口的哈希表 和链街列表实现 具有可预知的迭代顺序 查询快 有序
HashTable:底层为哈希表,单线程,线程安全,速度慢,不允许null键,null值
作者: 赖良峰 时间: 2018-8-15 21:25
1.Map接口下有几个子类,各自有什么特点? 1丶HashMap类 可以储存null的键和值,数据结构是哈希表,元素无序,
2丶LinkedHashMap类 相比于HashMap是有序的, 可以储存null的键和值
3丶Hashtable类 在JDK1.2版本后被HashMap替代,但是它有一个子类 properties 集合仍然在被使用,这个子类是唯一一个和IO流相结合的集合,不能存储null的键和值
2.目前为止,我们所学的遍历map集合有几种方式?
两种 一种是keyset结合get方法,一种是entryset方法
3.请用自己的语言描述你所了解的集合体系
单列集合Collection 包含List和Set两个接口,List接口有ArrayList,LinkedList和Vector等实现类,Set接口有HashSet,TreeSet,LinkedHashSet等实现类
双列集合Map 包含HashSet,LinkedHashMap,Hashtable等实现类
-
无标题.png
(33.51 KB, 下载次数: 12)
迄今学习的集合体系
作者: 仰望`星空 时间: 2018-8-15 21:25
郭林源
1.Map接口下有几个子类,各自有什么特点?-->我们学的Map子实现类有HashMap(特点是多线程集合,查询速度快,可以存储NUll值,存取顺序不一样),LinkedHashMap(有序集合,存取顺序一致),hashtable(特点是不能存储NUll值,同步-单线程集合-查找慢-线程安全)
2.目前为止,我们所学的遍历map集合有几种方式?-->3种,键找值KeySet方法,键值对EntrySet方法,values方法
3.请用自己的语言描述你所了解的集合体系-->Map是双列集合,键唯一,值可重复,键值可是同一类型,能根据键找到对应的值,不能根据值来找键
作者: 郑颖锋 时间: 2018-8-15 21:25
1.Map接口下有几个子类,各自有什么特点?
HashMap:保证成对元素唯一,并且查询速度很快,可是成对元素存放进去是没有顺序的,
LinkedHashMap:在HashMap的基础上保证顺序
2.目前为止,我们所学的遍历map集合有几种方式?
通过键找值:
a.使用Map集合的方法keySet(),把Map集合所有的key取出来,存储到一个Set集合中
b.遍历set集合,获取Map集合中的每一个key
c.通过Map集合中的方法get(key),通过key找到value
使用Entry对象(键值对)遍历:
1.使用Map集合中的方法entrySet(),把Map集合中多个Entry(键值对)对象取出来存储在set集合中
2.遍历Set集合,获取每一个Entry对象
3.使用Entry的getkey()和getvalue()获取键和值
3.请用自己的语言描述你所了解的集合体系
集合体系有主要有两种:单列集合(Collection)和双列集合(Map)。
单列集合(Collection)又分为list(有序有索引的集合)和set(无需无索引的集合)。
双列集合(Map)主要体现键和值的映射关系。
作者: 赵烈刚 时间: 2018-8-15 21:25
1. Map接口下有几个子类,各自有什么特点?
答:已知的子类有8种,常用的有HashMap和LinkedHashMap两种。
HashMap:存储数据采用的哈希表结构,元素的存取顺序不能保证一致。由于要保证键的唯一、不重复,需要重写键的hashCode()方法、equals()方法。
LinkedHashMap:存储数据采用的哈希表结构+链表结构。通过链表结构可以保证元素的存取顺序一致
2. 目前为止,我们所学的遍历map集合有几种方式?
答:两种,1)."键找值"的方式遍历Map集合;2). "键值对"的方式遍历Map集合
3. 请用自己的语言描述你所了解的集合体系
答:单列集合(Collection<E>)和双列集合(Map<K,V>)
作者: 李志超 时间: 2018-8-15 21:29
1.Map接口下有几个子类,各自有什么特点?
hashmap:键具有唯一性,元素成对出现。/linkedhashmap:链表双列集合,按存储数据输出。
Hashtable:单线程,安全,速度慢
2.目前为止,我们所学的遍历map集合有几种方式?
3种:keySet()&get(); values方法 entrySet();
3.请用自己的语言描述你所了解的集合体系
集合体系分单列集合和双列集合。
单列集合元素独立/单个存在,可使用迭代和增强for遍历。
双列集合元素成对存在(键值对),键具有唯一性,值则不需要,一个键只能对应一个值。
作者: 冰是睡着的水 时间: 2018-8-15 21:31
1.Map接口下有几个子类,各自有什么特点?
答:已经学过的有三种。HashMap,其底层是哈希表,为不安全的多线程,速度快,能存储null,;
需要重写hashCode()方法和equals()方法。LinkedHashMap,是HashMap的子类,底层是链表结
构加上哈希表结构,需要重写hashCode()方法和equals()方法。Hashtable,其底层为哈希表,是
单线程,线程安全,速度慢,不能存储null。
2.目前为止,我们所学的遍历map集合有几种方式?
答:两种。一种是通过keyset遍历,另外一种是通过entrySet遍历。
3.请用自己的语言描述你所了解的集合体系
答:Collection体系与Map体系,Collection体系包括List、Set,是单列集合。Map体系包括
HashMap(无序) LinkedHashMap(有序),是双列集合。
(黄嘉欣 )
作者: 林嘉志 时间: 2018-8-15 21:37
1.Map接口下有几个子类,各自有什么特点?
HashMap、LinkedHashMap
HashMap存储数据用的是哈希表结构,存储顺序不保证一致。为了保证键的唯一,需要重写键的hashCode方法和equals方法
HashMap下有个子类LinkedHashMap,存储数据采用的哈希表结构+链表结构。通过链 表结构可以保证元素的存取顺序一致;通过哈希表结构可以保证的键的唯一、不重复,需要重写键的 hashCode()方法、equals()方法
2.目前为止,我们所学的遍历map集合有几种方式?
两种,
keySet();和entrySet();
3.请用自己的语言描述你所了解的集合体系
集合分为单列接口和双列接口
Collection是所有单列接口的父类,它下面分为List接口和Set接口
List接口元素可重复,有索引,有序 查找快,增删慢
Set接口元素不可重复,无索引,无序,查找慢,增删快
Map是所有双列接口的父类,双列接口的元素是成对的,由键和值组成,主要实现类是HashMap和LinkedHashMap
作者: zouyitao 时间: 2018-8-15 21:40
邹毅涛
1.Map接口下有几个子类,各自有什么特点?
Map接口下有HashMap和LinkedHashMap两个接口;
HashMap特点:键。值成对存在,允许为空,底层数据结构为数组链表,key不允许重复要确保唯一值,重写HashCode和equals方法。元素无序
LinkedHashMap特点:底层数据结构为链表+数组链表,元素可以有序。
2.目前为止,我们所学的遍历map集合有几种方式?
遍历map集合可以通过keySet(键找值)和entrySet(键值对对象)两个方法
3.请用自己的语言描述你所了解的集合体系
单列集合基类Collection 分为List(有序)和Set(无序),List下有ArrayList(单线程)和LinkedList(多线程)两个。Set下有HashSet
双列集合Map:元素成对存在。键唯一。
作者: 小悦悦 时间: 2018-8-15 21:42
1.Map接口下有几个子类,各自有什么特点?
HashMap:元素的存取顺序不一致,查询速度快,值不允许重复
LinkedHashMap:元素的存取顺序一致,查询速度快,值不允许重复
2.目前为止,我们所学的遍历map集合有几种方式?
键找值:keyset();
键对值:entryset();
3.请用自己的语言描述你所了解的集合体系
单列,Collection接口:有set集合和list集合;
双列,Map接口:能存放有映射关系的对象,
--李翔
作者: 吴鑫佳 时间: 2018-8-15 21:51
1.Map接口下有几个子类,各自有什么特点?
有多个子类,比如HashMap,和LinkedHashMap,HashMap存储数据采用的哈希表结构,元素的存取顺序不能保证一致,LinkedHashMap存储数据采用的哈希表结构+链表结构,保证元素的存取顺序一致,同时也保证了键的唯一、不重复。
2.目前为止,我们所学的遍历map集合有几种方式?
两种,一种为public Set<K> keySet() : 获取Map集合中所有的键,在通过map.get(key)获取value的值。另一种为public Set<Map.Entry<K,V>> entrySet() : 获取到Map集合中所有的键值对对象的集合(Set集合),通过遍历集合获取成员变量,用getkey()和getvalue()得到对应的key和value。
3.请用自己的语言描述你所了解的集合体系
集合分为单列集合的collection集合和双列map集合,单列集合collection有分为list集合和set集合,list集合有序,有索引,可重复,set集合无序,无索引,不可重复。list集合可进行排序。Set集合可获得唯一性元素。
Map集合有键值对,是一一映射关系,键是唯一的,并且有唯一对应的值,值对应的键就不一定唯一。有键维护之间的关系。
作者: 陈捷 时间: 2018-8-15 21:56
1.Map接口下有几个子类,各自有什么特点?
HashMap: 底层是哈希表,多线程,线程不安全,速度快,能存储null值,null键
LinkHashMap:存取有序
Hashtable:底层为哈希表,单线程,线程安全,速度慢,不能存储null值null键
2.目前为止,我们所学的遍历map集合有几种方式?
keyset: 使用“键找值”的方式遍历map集合
entrySet: 使用“键值对”的方式遍历map集合
values:使用map.values();方法返回值遍历集合
3.请用自己的语言描述你所了解的集合体系
集合分为单列接口和双列接口
Collection是所有单列接口的父类,它下面分为List接口和Set接口
List接口元素可重复,有索引,有序 查找快,增删慢
Set接口元素不可重复,无索引,无序,查找慢,增删快
Map是所有双列接口的父类,双列接口的元素是成对的,由键和值组成,主要实现类是HashMap和LinkedHashMap
作者: shenxiaogan 时间: 2018-8-15 21:59
1.Map接口下有几个子类,各自有什么特点?
HashMap: 底层是哈希表,多线程,线程不安全,速度快,能存储null值,null键
LinkHashMap:相对于HashMap保证的存取的有序性
Hashtable:底层为哈希表,单线程,线程安全,速度慢,不能存储null值null键
2.目前为止,我们所学的遍历map集合有几种方式?
keyset : 使用“键找值”的方式遍历map集合
entrySet: 使用“键值对”的方式遍历map集合
3.请用自己的语言描述你所了解的集合体系
单列集合:Collection
Collection包括List集合和Set集合,List集合有序有索引值允许重复元素。Set集合不一定为有序集合,无索引值,元素不允许重复用增强for或迭代器进行遍历。
双列集合:Map 元素成对出现,map中的键唯一,值可以重复,键值一一对应,用keySet和entrySet进行遍历。
作者: 罗荣贵 时间: 2018-8-15 22:00
1.有三个子类:hashmap 不安全集合,多线程,效率高,可存放null值, hashtable 安全集合,单线程,效率低,不可存放null值,hashlinkedmap 双链表数据结构,存取有序,
2.有两种方式
keyset( )把键值存入set集合中,遍历集合中调用get()方法返回value值
利用entryset()方法获取键值对的对象存入set集合中,利用键值对的对象.方法名来调用获取key和value的内容
3.集合体现分成单列结合多双列集合
作者: 吴鑫佳 时间: 2018-8-15 22:01
1.Map接口下有几个子类,各自有什么特点?
有多个子类,比如HashMap,和LinkedHashMap,HashMap存储数据采用的哈希表结构,元素的存取顺序不能保证一致,LinkedHashMap存储数据采用的哈希表结构+链表结构,保证元素的存取顺序一致,同时也保证了键的唯一、不重复。
2.目前为止,我们所学的遍历map集合有几种方式?
两种,一种为public Set<K> keySet() : 获取Map集合中所有的键,在通过map.get(key)获取value的值。另一种为public Set<Map.Entry<K,V>> entrySet() : 获取到Map集合中所有的键值对对象的集合(Set集合),通过遍历集合获取成员变量,用getkey()和getvalue()得到对应的key和value。
3.请用自己的语言描述你所了解的集合体系
集合分为单列集合的collection集合和双列map集合,单列集合collection有分为list集合和set集合,list集合有序,有索引,可重复,set集合无序,无索引,不可重复。list集合可进行排序。Set集合可获得唯一性元素。
Map集合有键值对,是一一映射关系,键是唯一的,并且有唯一对应的值,值对应的键就不一定唯一。有键维护之间的关系。
| 欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |