A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

©   /  2019-3-23 15:15  /  5790 人查看  /  68 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 郑海波 于 2019-3-25 21:32 编辑

1.Map接口下有几个子类,各自有什么特点?
Map接口下的子类有3个:
HashMap:1.查询速度快,因为底层结构是哈希表;2.无序集合;
LinkedHashMap:1.底层结构是哈希表加链表,是一个有序集合;2.继承自HashMap,查询速度快;
Hashtable:1.底层结构是哈希表;2.线程比较安全;3.单线程集合,速度慢,在JAVA1.2后被其他集合取代

2.目前为止,我们所学的遍历map集合有几种方式?
方式一:通过key键来查找value值
        步骤:1.使用MAP集合中的keySet()方法把所有key存储到一个集合中
                  2.遍历这个集合,获取每一个key(增强for或者迭代器)
                  3.通过get(key)方法获取value
                  4.打印
方式二:使用entry对象来遍历方法
        步骤:1.使用entrySet()新建一个Set集合,存储entry对象
                  2.遍历这个集合,获取每个ntry对象(增强for或者迭代器)
                  3.使用 对象.getKey()和对象.getValue()  方法获取key键和value值
                  4.打印

3.请用自己的语言描述你所了解的集合体系
集合体系氛围单列集合和双列集合
单列集合里最大的是Collection

Collection有两个实现类:
1.List集合:有序,有索引值,允许重复元素存储
    List集合有三个子类:
       1.ArrayList集合:查询快,增删慢,数据结构为数组
       2.LinkedList集合:增删快,查询慢,数据结构为链表
       3.Vector集合:安全性高,效率低,JAVA1.2后被ArrayList取代
2.Set集合:没有索引,不允许重复元素存储  
    Set集合下有个子类——HashSet集合:不允许存储重复元素,没有索引,无序集合,数据结构为哈希表(数组+链表/红黑树)
    HashSet集合下有个子类——LinkedHashSet集合:在哈希表的基础上多了一条链表来记录元素顺序,因此LinkedHashSet集合是有序的,但是也不允许存储重复元素,没有索引

双列集合里最大为Map:一个元素有两个值key和value;key和value的数据类型可以相同,也可以不同;key是不允许重复的,value是可以重复的;key和value是一一对应
Map有两个实现类:
1.HashMap集合:数据结构为哈希表,也是一个无序集合,多线程,速度快
       HashMap集合有个子类——LinkedHashMap:数据结构:哈希表上多了条链表,因此有序
2.Hashtable集合:底层也是一个哈希表,安全性高,但是是单线程,速度慢,JAVA1.2后被其他集合取代


回复 使用道具 举报
1.Map接口下有几个子类,各自有什么特点?
Map接口下的子类有3个:
HashMap:1.查询速度快,因为底层结构是哈希表;2.无序集合;
LinkedHashMap:1.底层结构是哈希表加链表,是一个有序集合;2.继承自HashMap,查询速度快;
Hashtable:1.底层结构是哈希表;2.线程比较安全;3.单线程集合,速度慢,在JAVA1.2后被其他集合取代

2.目前为止,我们所学的遍历map集合有几种方式?
方式一:通过key键来查找value值
        步骤:1.使用MAP集合中的keySet()方法把所有key存储到一个集合中
              2.遍历这个集合,获取每一个key(增强for或者迭代器)
              3.通过get(key)方法获取value
              4.打印
方式二:使用entry对象来遍历方法
        步骤:1.使用entrySet()新建一个Set集合,存储entry对象
              2.遍历这个集合,获取每个ntry对象(增强for或者迭代器)
              3.使用 对象.getKey()和对象.getValue()  方法获取key键和value值
              4.打印

3.请用自己的语言描述你所了解的集合体系
集合体系氛围单列集合和双列集合

单列集合里最大的是Collection
Collection有两个实现类:
1.List集合:有序,有索引值,允许重复元素存储
    List集合有三个子类:
       1.ArrayList集合:查询快,增删慢,数据结构为数组
       2.LinkedList集合:增删快,查询慢,数据结构为链表
       3.Vector集合:安全性高,效率低,JAVA1.2后被ArrayList取代
2.Set集合:没有索引,不允许重复元素存储  
    Set集合下有个子类——HashSet集合:不允许存储重复元素,没有索引,无序集合,数据结构为哈希表(数组+链表/红黑树)
    HashSet集合下有个子类——LinkedHashSet集合:在哈希表的基础上多了一条链表来记录元素顺序,因此LinkedHashSet集合是有序的,但是也不允许存储重复元素,没有索引

双列集合里最大为Map:一个元素有两个值key和value;key和value的数据类型可以相同,也可以不同;key是不允许重复的,value是可以重复的;key和value是一一对应
Map有两个实现类:
1.HashMap集合:数据结构为哈希表,也是一个无序集合,多线程,速度快
       HashMap集合有个子类——LinkedHashMap:数据结构:哈希表上多了条链表,因此有序
2.Hashtable集合:底层也是一个哈希表,安全性高,但是是单线程,速度慢,JAVA1.2后被其他集合取代
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马