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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

今天我们学习了Map集合,请根据自己的理解回答下面问题:
1.Map接口有什么特点,谈谈你所了解的Map实现类?
2.目前为止,我们所学的遍历map集合有几种方式?
3.请用自己的语言描述你所了解的集合体系

31 个回复

倒序浏览
1.Map接口有什么特点,谈谈你所了解的Map实现类?
答:(1)键值对映射关系
    (2)一个键对映一个值
    (3)键不能重复,值可以重复
    (4)元素存取无序
    (5)键和值可以是任何类型数据
2.目前为止,我们所学的遍历map集合有几种方式?
答:三种,方式一:获取所有键的集合,用keySet()方法实现,再通过增强for循环回去对应的值。
          方式二:获取所有键值对对象的集合,用Set<Map.Entry<K,V>> entrySet()方法实现,然后通                  过增强for循环获取键和值
          方式三:通过Collection<值包装类> 对象名 = map.values;的方法 将所有值赋予Collection                  集合,通过对Collection集合遍历来实现

3.请用自己的语言描述你所了解的集合体系
答:集合是分为Collection(单列)接口和Map(双列)接口,
Collection接口下又被List和Set两个接口继承,其中List是存储有序,可重复,有索引值的数据,Set存储的是不重复,无索引值的数据。在List接口下又有两个重要的实现类为ArrayList(底层是数组结构,查询快增删慢),LinkedList(底层是链表结构,查询慢,增删快。
Map接口下又有HashMap实现类,是双列集合,且存储不重复,无索引值的数据,在HashMap下又有LinkedHashMap实现,存储元素有序。
   
回复 使用道具 举报
1.map是一个存取无序的集合,存储的是一个键值对,其中键不可重复,值可重复,可存储null值,null键

2.遍历map共有两种方式:
a.获取keySet并遍历,再根据key获取集合的value值
b.获取EntrySet并遍历,得到一个Entry,存储键值对,调用方法getKey(),getValue()获取键值对

3.集合分为单列集合和双列集合
单列集合:父接口Collection
子接口:有序集合List(元素存取有序,有索引,元素可重复)、无序集合Set(元素存取无序,无索引,元素不可重复)
实现类:有序集合ArrayList(底层数组实现,存取快,增删慢)、LinkedList(底层链表实现,存取慢,增删快),无序集合HashSet(底层哈希表结构)、TreeSet(排序)、LinkedHashSet(有序)
双列集合:父接口为Map(存储键值对,键与值一一对应,键不可重复,值可重复,可存null,存取无序)
实现类:HashMap(存取无序)、TreeMap(底层红黑树实现、可排序)
回复 使用道具 举报


今天我们学习了Map集合,请根据自己的理解回答下面问题:

1.Map接口有什么特点,谈谈你所了解的Map实现类?
        答:Map是双列集合,每个元素包含两个引用数据类型对象,这两个对象是映射关系,一个对应一个,一个是键,一个是值。键不可重复,值可以重复。元素存取无序。

2.目前为止,我们所学的遍历map集合有几种方式?
        答:两种:第一种:使用keySet()方法把Map集合的所有键提取出来放到Set集合中,遍历Set得到键,在使用Map集合的get方法得到通过键得到值。第二种:使用entrySet()得到每个键值对的对象储存在Set集合中,遍历Set集合得到每个键值对的对象,通过键值对对象调用getKey()和getValue得到键和值。

3.请用自己的语言描述你所了解的集合体系
        答:集合分为单列集合和双列集合。单列集合的都继承Collection接口,双列集合的都继承Map接口。Collection接口又分为List接口和Set接口,List接口的实现类集合具有元素存取有序,有索引值,元素可重复的特点,Set集合的实现类集合具有元素存取有序,元素不能重复。Map接口的实现类集合每个元素储存两个对象,具有两个对象是映射关系、键不可重复,值可以重复,键和值一一对应,元素存取无序的特点。

点评

222  发表于 2019-6-24 11:16
666  发表于 2019-6-24 00:08
666  发表于 2019-6-23 12:48
回复 使用道具 举报
1. Map接口有什么特点,谈谈你所了解的Map实现类?
①Map接口的特点是双列集合,键映射到值,键是唯一的(保证了不重复),一个键对应一个值,值可以重复,无序
②Map接口实现类:
HashMap,具有Set接口的特点,遍历集合是通过键的集合或者键值对集合。
TreeMap,相对HashMap,存储的元素有序,通过默认排序和自定义排序实现。

2.目前为止,我们所学的遍历map集合有几种方式?
①增强for
②迭代器

3.请用自己的语言描述你所了解的集合体系

点评

叼叼的  发表于 2019-6-22 21:47
  发表于 2019-6-22 21:41

评分

参与人数 2黑马币 +10 收起 理由
陈富骁 + 5 山寨
辛全旺 + 5 赞一个!

查看全部评分

回复 使用道具 举报 2 0
本帖最后由 朱铭恺 于 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比较器进行比较排序)
回复 使用道具 举报
何凯 中级黑马 2019-6-22 21:27:36
7#
1.Map接口有什么特点,谈谈你所了解的Map实现类?
        Map集合是双列集合 一个 Key绑定一个Value Key不可重复,Value可重复 ,存储时Key是无序的 Map接口无索引值 是通过Key来查找值
2.目前为止,我们所学的遍历map集合有几种方式?
两种
一种是通过调用keySet,返回一个存储了所有key的Set集合 通过遍历用.get()括号中传入key值返回value值
Map<String,String> map = new HashMap<>();
Set<String> set = map.keySet;
for(String key : set){
String value = map.get(key);
}
还有一种是通过调用map.entrySet();方法 他会返回一个存储了key和value映射对象的Set集合 在遍历的时候可以用对象获取key和value
HashMap<Integer, String> map = new HashMap<>();
        Set<Map.Entry<Integer, String>> set = map.entrySet();
        for (Map.Entry<Integer, String> entry : set) {
            entry.getKey();
            entry.getValue();
        }

3.请用自己的语言描述你所了解的集合体系
集合下有两个集合接口 一个是Collection单列集合接口和Map双列集合接口

继承Collection的接口有List和Set
分别有实现类ArrayList LinkedList ,HashSet LinkedHashSet TreeSet
List接口的特点是 有索引 存取有序 元素可重复
ArrayList  和 LinkedList都是实现了List接口的实现类 都继承了List的特点。它俩的区别是底层数据结构不同 ArrayList 底层是数组 特点是查询快,增删慢
Linked的底层是链表结构,特点是增删快,查询慢

Set接口的特点是无索引,元素不可重复
实现它的集合有 HashSet LinkedHashSet TreeSet
HashSet的特点是元素不可重复 无索引 存取无序 它的底层是数组加 链表/红黑树结构
LinkedHashSet的特点是元素不可重复 无索引 存取有序 它的底层是数组加 链表/红黑树结构 外加了一个链表记录存入的顺序
TreeSet的特点是 元素不可重复 无索引值 存元素时会给元素排序, 根据自然排序或者 自定义排序

Map接口下有实现接口 HashMap 和 TreeMap
HashMap的特点是 双列 存取无序 键不可重复值可重复 无索引值
TreeMap的特点是会根据键值来排序

无标题.png (78.25 KB, 下载次数: 9)

无标题.png
回复 使用道具 举报
何凯 中级黑马 2019-6-22 21:28:31
8#
1.Map接口有什么特点,谈谈你所了解的Map实现类?
        Map集合是双列集合 一个 Key绑定一个Value Key不可重复,Value可重复 ,存储时Key是无序的 Map接口无索引值 是通过Key来查找值
2.目前为止,我们所学的遍历map集合有几种方式?
两种
一种是通过调用keySet,返回一个存储了所有key的Set集合 通过遍历用.get()括号中传入key值返回value值
Map<String,String> map = new HashMap<>();
Set<String> set = map.keySet;
for(String key : set){
String value = map.get(key);
}
还有一种是通过调用map.entrySet();方法 他会返回一个存储了key和value映射对象的Set集合 在遍历的时候可以用对象获取key和value
HashMap<Integer, String> map = new HashMap<>();
        Set<Map.Entry<Integer, String>> set = map.entrySet();
        for (Map.Entry<Integer, String> entry : set) {
            entry.getKey();
            entry.getValue();
        }

3.请用自己的语言描述你所了解的集合体系
集合下有两个集合接口 一个是Collection单列集合接口和Map双列集合接口

继承Collection的接口有List和Set
分别有实现类ArrayList LinkedList ,HashSet LinkedHashSet TreeSet
List接口的特点是 有索引 存取有序 元素可重复
ArrayList  和 LinkedList都是实现了List接口的实现类 都继承了List的特点。它俩的区别是底层数据结构不同 ArrayList 底层是数组 特点是查询快,增删慢
Linked的底层是链表结构,特点是增删快,查询慢

Set接口的特点是无索引,元素不可重复
实现它的集合有 HashSet LinkedHashSet TreeSet
HashSet的特点是元素不可重复 无索引 存取无序 它的底层是数组加 链表/红黑树结构
LinkedHashSet的特点是元素不可重复 无索引 存取有序 它的底层是数组加 链表/红黑树结构 外加了一个链表记录存入的顺序
TreeSet的特点是 元素不可重复 无索引值 存元素时会给元素排序, 根据自然排序或者 自定义排序

Map接口下有实现接口 HashMap 和 TreeMap
HashMap的特点是 双列 存取无序 键不可重复值可重复 无索引值
TreeMap的特点是会根据键值来排序

无标题.png (78.25 KB, 下载次数: 7)

无标题.png

点评

666  发表于 2019-6-24 11:18
666  发表于 2019-6-23 12:49
回复 使用道具 举报
何凯 中级黑马 2019-6-22 21:29:54
9#
1.Map接口有什么特点,谈谈你所了解的Map实现类?
        Map集合是双列集合 一个 Key绑定一个Value Key不可重复,Value可重复 ,存储时Key是无序的 Map接口无索引值 是通过Key来查找值
2.目前为止,我们所学的遍历map集合有几种方式?
两种
一种是通过调用keySet,返回一个存储了所有key的Set集合 通过遍历用.get()括号中传入key值返回value值
Map<String,String> map = new HashMap<>();
Set<String> set = map.keySet;
for(String key : set){
String value = map.get(key);
}
还有一种是通过调用map.entrySet();方法 他会返回一个存储了key和value映射对象的Set集合 在遍历的时候可以用对象获取key和value
HashMap<Integer, String> map = new HashMap<>();
        Set<Map.Entry<Integer, String>> set = map.entrySet();
        for (Map.Entry<Integer, String> entry : set) {
            entry.getKey();
            entry.getValue();
        }

3.请用自己的语言描述你所了解的集合体系
集合下有两个集合接口 一个是Collection单列集合接口和Map双列集合接口

继承Collection的接口有List和Set
分别有实现类ArrayList LinkedList ,HashSet LinkedHashSet TreeSet
List接口的特点是 有索引 存取有序 元素可重复
ArrayList  和 LinkedList都是实现了List接口的实现类 都继承了List的特点。它俩的区别是底层数据结构不同 ArrayList 底层是数组 特点是查询快,增删慢
Linked的底层是链表结构,特点是增删快,查询慢

Set接口的特点是无索引,元素不可重复
实现它的集合有 HashSet LinkedHashSet TreeSet
HashSet的特点是元素不可重复 无索引 存取无序 它的底层是数组加 链表/红黑树结构
LinkedHashSet的特点是元素不可重复 无索引 存取有序 它的底层是数组加 链表/红黑树结构 外加了一个链表记录存入的顺序
TreeSet的特点是 元素不可重复 无索引值 存元素时会给元素排序, 根据自然排序或者 自定义排序

Map接口下有实现接口 HashMap 和 TreeMap
HashMap的特点是 双列 存取无序 键不可重复值可重复 无索引值
TreeMap的特点是会根据键值来排序

无标题.png (78.25 KB, 下载次数: 19)

无标题.png
回复 使用道具 举报
1.Map接口有什么特点,谈谈你所了解的Map实现类?
        Map集合是双列集合 一个 Key绑定一个Value Key不可重复,Value可重复 ,存储时Key是无序的 Map接口无索引值 是通过Key来查找值
2.目前为止,我们所学的遍历map集合有几种方式?
两种
一种是通过调用keySet,返回一个存储了所有key的Set集合 通过遍历用.get()括号中传入key值返回value值
Map<String,String> map = new HashMap<>();
Set<String> set = map.keySet;
for(String key : set){
String value = map.get(key);
}
还有一种是通过调用map.entrySet();方法 他会返回一个存储了key和value映射对象的Set集合 在遍历的时候可以用对象获取key和value
HashMap<Integer, String> map = new HashMap<>();
        Set<Map.Entry<Integer, String>> set = map.entrySet();
        for (Map.Entry<Integer, String> entry : set) {
            entry.getKey();
            entry.getValue();
        }

3.请用自己的语言描述你所了解的集合体系
集合下有两个集合接口 一个是Collection单列集合接口和Map双列集合接口

继承Collection的接口有List和Set
分别有实现类ArrayList LinkedList ,HashSet LinkedHashSet TreeSet
List接口的特点是 有索引 存取有序 元素可重复
ArrayList  和 LinkedList都是实现了List接口的实现类 都继承了List的特点。它俩的区别是底层数据结构不同 ArrayList 底层是数组 特点是查询快,增删慢
Linked的底层是链表结构,特点是增删快,查询慢

Set接口的特点是无索引,元素不可重复
实现它的集合有 HashSet LinkedHashSet TreeSet
HashSet的特点是元素不可重复 无索引 存取无序 它的底层是数组加 链表/红黑树结构
LinkedHashSet的特点是元素不可重复 无索引 存取有序 它的底层是数组加 链表/红黑树结构 外加了一个链表记录存入的顺序
TreeSet的特点是 元素不可重复 无索引值 存元素时会给元素排序, 根据自然排序或者 自定义排序

Map接口下有实现接口 HashMap 和 TreeMap
HashMap的特点是 双列 存取无序 键不可重复值可重复 无索引值
TreeMap的特点是会根据键值来排序
回复 使用道具 举报
1.Map接口有什么特点,谈谈你所了解的Map实现类?
        Map集合是双列集合 一个 Key绑定一个Value Key不可重复,Value可重复 ,存储时Key是无序的 Map接口无索引值 是通过Key来查找值
2.目前为止,我们所学的遍历map集合有几种方式?
两种
一种是通过调用keySet,返回一个存储了所有key的Set集合 通过遍历用.get()括号中传入key值返回value值
Map<String,String> map = new HashMap<>();
Set<String> set = map.keySet;
for(String key : set){
String value = map.get(key);
}
还有一种是通过调用map.entrySet();方法 他会返回一个存储了key和value映射对象的Set集合 在遍历的时候可以用对象获取key和value
HashMap<Integer, String> map = new HashMap<>();
        Set<Map.Entry<Integer, String>> set = map.entrySet();
        for (Map.Entry<Integer, String> entry : set) {
            entry.getKey();
            entry.getValue();
        }

3.请用自己的语言描述你所了解的集合体系
集合下有两个集合接口 一个是Collection单列集合接口和Map双列集合接口

继承Collection的接口有List和Set
分别有实现类ArrayList LinkedList ,HashSet LinkedHashSet TreeSet
List接口的特点是 有索引 存取有序 元素可重复
ArrayList  和 LinkedList都是实现了List接口的实现类 都继承了List的特点。它俩的区别是底层数据结构不同 ArrayList 底层是数组 特点是查询快,增删慢
Linked的底层是链表结构,特点是增删快,查询慢

Set接口的特点是无索引,元素不可重复
实现它的集合有 HashSet LinkedHashSet TreeSet
HashSet的特点是元素不可重复 无索引 存取无序 它的底层是数组加 链表/红黑树结构
LinkedHashSet的特点是元素不可重复 无索引 存取有序 它的底层是数组加 链表/红黑树结构 外加了一个链表记录存入的顺序
TreeSet的特点是 元素不可重复 无索引值 存元素时会给元素排序, 根据自然排序或者 自定义排序

Map接口下有实现接口 HashMap 和 TreeMap
HashMap的特点是 双列 存取无序 键不可重复值可重复 无索引值
TreeMap的特点是会根据键值来排序
回复 使用道具 举报


今天我们学习了Map集合,请根据自己的理解回答下面问题:
1.Map接口有什么特点,谈谈你所了解的Map实现类?

Map是双列的,存储的键值对形式的元素,键与值一一对应,键唯一,值可重复,
底层的数据结构只针对键有效,与值无关。
HashMap 底层是哈希表 由对象的hashcode()和equals()方法保证键的唯一性
TreeMap 底层是红黑树 由自然排序或者比较器排序保证键的唯一性

2.目前为止,我们所学的遍历map集合有几种方式?
两种方式:
A:键找值
                        a:获取所有键的集合
                        b:遍历键的集合,得到每一个键
                        c:根据键到集合中去找值
               
B:键值对对象找键和值
                        a:获取所有的键值对对象的集合
                        b:遍历键值对对象的集合,获取每一个键值对对象
                        c:根据键值对对象去获取键和值

3.请用自己的语言描述你所了解的集合体系

集合有单列 Collection 和双列 Map

  Collection ----||  
                                 ||        list --------------||ArrayList
                                有索引,有序,可重复                   底层是数组,查询快,增删慢,
                                                                                        线程非同步,效率高
                                                                           || LinkedList
                                                                                        底层是链表,查询慢,增删快
                                                                                        线程非同步,效率高
                                 || set ---------------|| HashSet
                                无索引,无序,唯一                     底层是哈希表 保证元素的唯一性
                                                                                ---------------|| LinkedHashSet
                                                                                                           特性:元素存取有序
                                                                           || TreeSet
                                                                                        底层是红黑树,由自然排序或指定的比较器保证唯一性
   Map ----------|| HashMap
                                       存取无序,底层是哈希表,通过重写对象的hashcode()和equals()方法保证键的唯一性。
                                        如果键已存在,再添加相同的键,则是修改该键对应的值。
                                        ---------------|| LinkedHashMap
                                                                                                           特性:元素存取有序
                                 || TreeMap
                                    底层是红黑树,由键的自然排序或指定的比较器保证键的唯一性并按指定的规则排序。
回复 使用道具 举报


1.Map接口有什么特点,谈谈你所了解的Map实现类?
答:Map接口的子类有以下几个特点:是键值对形式存储数据;键和值是一一对应关系;键是唯一的而值不是唯一的。
       Map的实现类有HashMap:底层数据结构是哈希表,元素存储无序。
                               TreeMap:元素是可以进行排序的。


2.目前为止,我们所学的遍历map集合有几种方式?
答:两种。
       第一种:通过keySet集合查找value值
       步骤:1.使用keySet()方法获取到集合的所有键,放在一个Set集合中
                  2.遍历这个集合,获取每一个key
                  3.通过get(key)方法获取value
         
       第二种:使用entry对象来遍历方法
       步骤:1.先调用entrySet()方法拿到每一个键值对象封装的Set集合
                  2.遍历Set集合,获取每个键值对象
                  3.getKey()获取key键  getValue()获取value值
                  
3.请用自己的语言描述你所了解的集合体系
答:集合体系包含单列集合Collection和双列集合Map。

    Collection:没有索引,是所有单列集合的顶层接口。
   
        Collection下面有List和Set两个子接口。

             List特点:元素有序,可重复,有索引值。主要有ArrayList和LinkedList实现类。
                ArrayList特点:底层是一个数组结构,查询快,增删慢;
                LinkedList特点:底层是链表结构,查询慢,增删快。

             Set特点:存储元素不可重复,集合无索引值。主要有HashSet,LinkedHashSet,TreeSet。
                HashSet特点:无序,底层数据结构是哈希表+链表/红黑树;
                         LinkedHashSet特点:是HashSet的子类,存储元素有序;
                TreeSet特点:元素可以进行排序。

     Map:是所有双列集合的顶层接口,是以键值对形式存储数据,键不可重复,值可重复,键和值一一对应,key和value可以是任意数据类型。
               Map的实现类有HashMap
                          HashMap:元素存储无序。
                                 LinkedHashMap:有序的,添加了一条链表维护顺序
                          TreeMap:根据其键的自然顺序进行排序,或者取决于使用的构造方法。
回复 使用道具 举报


今天我们学习了Map集合,请根据自己的理解回答下面问题:
1.Map接口有什么特点,谈谈你所了解的Map实现类?

Map接口特点:(1)键值对存储(2)键值对是一一对应(3)键不可重复,值可以重复(4)存取无序
                       
Map接口的实现类Hashmap集合:可以使用任意引用数据类型,作为键和值,并且可以存null键null值


                map接口的实现类Treemap集合:可以对存储的元素进行排序,按照键的类中的默认排序规则
或者创建对象时指定的自定义排序


2.目前为止,我们所学的遍历map集合有几种方式?

有三种方式:增强for,迭代器,和entryset()方法




3.请用自己的语言描述你所了解的集合体系

单列集合:
Collection接口:无索引,定义所有单列集合方法
        list接口:(1)有索引(2)元素可重复(3)存取有序
                list接口下有:Arraylist集合:底层是数组结构,查询快(快速根据索引值定位)
,增删慢(频繁的创建数组对象)
                              LinkdeList集合:底层是链表结构,查询慢(因为地址值不
连续,每次都要从头开始查),增删快(只需要改变地址值的记录即可不需要创建对象)

        List集合排序使用Collections工具类         sort(List)使用默认排序(在泛型类中)
                                                sort(List,Compator)自定义比较器

                                                自定义比较器优先于自定义




                Set接口:(1)无索引(2)元素存储不可重复(3)元素存取无序

                Set接口下有:HashSet集合:底层是哈希表+链表/红黑树,无序(Set集合中存储的元素
需要重写HashCode和equals方法,目的是在进行存储的时候,提高存储的效率,当元素存入集合中,会先调用
Hashcode方法,计算该元素的哈希值,和集合中的元素比较哈希值,如果哈希值不同,直接存储,如果哈希值
相同,我们在调用equals方法,如果返回的是true,证明内容相同,不存储,如果是false,存储)
                                LinkedList集合是HashSet的子类,元素存取有序
                             TreeSet集合:可以实现排序(1)默认排序(在泛型类中,实现Comparable接口)(2)
                自定义比较器 Comparator

----------------------------------------------------------------------------------------------------

双列集合:
                Map接口:(1)键值对存储(2)键值对是一一对应(3)键不可重复,值可以重复(4)存取无序
                       
                        Map接口的实现类Hashmap集合:可以使用任意引用数据类型,作为键和值,并且可以存储
null键null值
                        注意:因为map集合键的唯一性,所以作为键的类必须重写hashcode和equals方法,值没有要求!
                        LingdeHashMap是Hashmap的子类:他是有序的,因为添加了一条链表维护顺序
                       


                        Treemap集合:可以对存储的元素进行排序,按照键的类中的默认排序规则
或者创建对象时指定的自定义排序











评分

参与人数 1黑马币 +5 收起 理由
陈富骁 + 5 神马都是浮云

查看全部评分

回复 使用道具 举报 0 1
1.Map接口有什么特点,谈谈你所了解的Map实现类?
特点:
1、是以键值对的形式存储数据
2、键值对是一一对应
3、键不可重复的,值可以重复
4、key和value可以是任意数据
5、元素存取无序

Map的实现类:
TreeMap:可以对元素存储进行排序
HashMap:有键和值,键不可重复,值可重复,使用自定义类作为键时,需重写hashcod()方法和equals()方法,来保证键的唯一性

2.目前为止,我们所学的遍历map集合有几种方式?
Set< K >  keyset()  获取所有的键,保存到Set集合中
Set<Map.Entry<K , V>>   entrySet()  获取所有键值对,封装成Entry对象


3.请用自己的语言描述你所了解的集合
继承或实现Collection接口的都是单链集合,单链集合中list接口及其实现类都是有序的,且都有索引值,元素可重复。Set接口及其实现类元素值都不可重复
继承或实现Map接口的都是双链集合,双链集合中HashMap集合无索引值,元素存储无序,元素不可重复。LinkedHashMap元素存储有序
回复 使用道具 举报
1.Map接口有什么特点,谈谈你所了解的Map实现类?
Map接口特点:map接口是双链接口, 键值对映射关系/一个键对应一个值, 键不能重复,值可以重复/元素存取无序

Map实现类具有map接口的所有特点
hashMap集和可以引用任意引用数据类型,作为键和值,并且可以存储null值和null键,作为键的类必须重写hashcode方法保证键的唯一性
Linkedhashmap存储元素是有序的

2.目前为止,我们所学的遍历map集合有几种方式?
两种map集合遍历方式:
1)通过keySet方法获取键集合,通过遍历键集合,获得每个键的值
2)通过entrySet方法获取键值对的封装集合,再遍历集合,获得键值对

3.请用自己的语言描述你所了解的集合体系
集合分为单链collection集合和双链Map集合

(1)单链集合:collection接口是所有单链集合的父接口,无索引值,定义所有单链集合方法,下面还有子接口list和set
list接口的特点是有索引值,存取元素有序,元素可重复,list接口有ArrayList和LinkedList两个实现类,都具有list几口的特点
list两个实现类的区别:ArrayList集合底层数据结构是数组,有查询快增删慢的特点,LinkedList集合底层数据结构是链表,有增删快查询慢的特点
(2)set集合存储数据无序,元素不可重复,set接口下有HashSet和TreeSet两个实现类,HashSet集合还有一个子集合LinkedSet,存储元素有序,HashSet集合底层数据结构是哈希表,存储元素无序,不可重复,是因为hashset的元素都重写了hashCode和equeals方法,当调用add方法之前会先比较哈希值,如果哈希值相同再比较元素内容,避免了内容重复
TreeSet集合可以通过comparable和comparator两个接口实现集合元素的排序
(3)Map接口是所有双链集合的父接口,map接口是双链接口, 键值对映射关系/一个键对应一个值, 键不能重复,值可以重复/元素存取无序

hashMap集和可以引用任意引用数据类型,作为键和值,并且可以存储null值和null键,作为键的类必须重写hashcode方法保证键的唯一性
Linkedhashmap存储元素是有序的
回复 使用道具 举报 1 0
1.Map接口有什么特点,谈谈你所了解的Map实现类?
答:Map接口的特点有:1.键值对呈映射关系。2.键不能重复,值可以重复。3.一个键对应一个值。4.键和值可以是任意数据类型。5.元素存取是无序的。
Map的实现类常用的是HashMap和TreeMap。TreeMap可以实现排序功能。

2.目前为止,我们所学的遍历map集合有几种方式?
答:两种方式:1.keyset方法:生成set集合,该集合是由Map中的键组成,通过遍历键可以得到相映射的值。2.entryset方法:生成set集合,该集合获取了所有键值对对象的集合。遍历该键值对对象集合,再通过getkey和getvalue方法获取键值。

3.请用自己的语言描述你所了解的集合体系
答:集合分为单列集合Collection(无序)和双列集合Map(无序),单列集合Collection下又分为可重复集合List(有序)和不可重复集合Set(无序)。List下常用的实现类为Arraylist,linkedlist。Arraylist底层是数组实现,特点是查询快,增删慢,linkedlist底层是链表实现,特点是查询慢,增删快。Set下常用的实现类为HashSet和TreeSet(可以进行排序),双列集合Map下的实现类有HashMap和TreeMap(可以进行排序)。
回复 使用道具 举报
1.Map接口有什么特点,谈谈你所了解的Map实现类?
答:Map接口的特点有:1.键值对呈映射关系。2.键不能重复,值可以重复。3.一个键对应一个值。4.键和值可以是任意数据类型。5.元素存取是无序的。
Map的实现类常用的是HashMap和TreeMap。TreeMap可以实现排序功能。

2.目前为止,我们所学的遍历map集合有几种方式?
答:两种方式:1.keyset方法:生成set集合,该集合是由Map中的键组成,通过遍历键可以得到相映射的值。2.entryset方法:生成set集合,该集合获取了所有键值对对象的集合。遍历该键值对对象集合,再通过getkey和getvalue方法获取键值。

3.请用自己的语言描述你所了解的集合体系
答:集合分为单列集合Collection(无序)和双列集合Map(无序),单列集合Collection下又分为可重复集合List(有序)和不可重复集合Set(无序)。List下常用的实现类为Arraylist,linkedlist。Arraylist底层是数组实现,特点是查询快,增删慢,linkedlist底层是链表实现,特点是查询慢,增删快。Set下常用的实现类为HashSet和TreeSet(可以进行排序),双列集合Map下的实现类有HashMap和TreeMap(可以进行排序)。
回复 使用道具 举报


1.Map接口有什么特点,谈谈你所了解的Map实现类?

        Map接口的特点:

键值对存储且一一对应,键不可重复,值可重复,存取无序

        Map的实现类

HashMap:可使用任意引用数据类型,作为键和值都可存null,因为Map集合键的唯一性,作为键的类必须重写HashCode和equals,值没有要求

LinkedHashMap:有序,添加了一条链表维护顺序

TreeMap集合:可对存储的元素排序,按键的类中默认排序规则,或者创建对象时指定的自定义比较



2.目前为止,我们所学的遍历map集合有几种方式?

两种:

一种是keySet():

1.先调用keySet()获取map集合中的键存入set集合中

2.遍历set集合,用map集合的get方法得到值

3.打印键和值

一种是entrySet():

1.先调用entrySet方法,拿到每对键值对象封装的Set集合

2.遍历Set集合。拿到每对键值对象

3.getKey获得键        getValue获取值





3.请用自己的语言描述你所了解的集合体系?

集合分为:单列集合    和    双列集合

1.1单列集合Collection接口:

        存储的元素只有一个值

        Collection接口又分为List接口 和 Set接口

1.1.1  List接口:特点有序(元素按顺序存储),元素值可重复,有索引值

        List接口有两个需要重点学习的实现类:

        ArrayList集合(底层为数组结构,特点是查询快增删慢)   和    LinkedList集合(底层是链表结构,查询慢,增删快)



1. 1.2  Set接口:存储元素不重复,集合无索引值

Set接口有两个需要重点学习的实现类:

        HashSet实现类(无序)  和  TreeSet实现类(有序)

        HashSet实现类里面有个LinkedHashSet集合(元素存取有序)



1.2双列集合(Map接口):

        一个元素有一个组(两个值)

        key(键):value(值)

1.2.1  Map接口需要重点学习的实现类:

        HashMap实现类(双列集合有key:value,存储元素不重复,集合无索引值)

        HashMap的子类: LinkedHashMap (存储元素有序)


回复 使用道具 举报
1.Map接口有什么特点,谈谈你所了解的Map实现类?
答:特点
    (1)键值对存在映射关系。
    (2)双列集合,一个键对应一个值。
   (3)键不能重复,值可以重复。
   (4)存储无序。
    HashMap集合数据结构是哈希表,查询快,增删快,,可以存储任意引用数据类型,作为键和值,并且可以存储null值null键但元素存储无序。如果键的类型是数值型的话,取出元素时,会按从小到大排序。
    LinkedHashMap集合数据结构是哈希表+链表。哈希表保证查询速度,链表保证存储和取出的元素一致。
    TreeMap的数据结构是红黑树,该集合根据其键的自然顺序进行排序,或者根据创建对象时提供的 Comparator 进行排序,具体取决于使用的构造方法。

2.目前为止,我们所学的遍历map集合有几种方式?
答:第一种通过键找值方法;
    (1)通过getkey()先获取集合的所有键,放到Set集合中。
   (2)遍历Set集合,拿到每一个键key。
   (3)通过get()方法,利用键key,获取每一个值。
第二种遍历键值对:
    (1)先调用entrySet()方法,获取所有的键值对,封装成Entry对象。
    (2)遍历Set集合,拿到每一个键值对对象。
     (3)通过getKey获取键,通过getValue获取值。

3.请用自己的语言描述你所了解的集合体系。
答:集合可以分为单列集合(Collection)和双列集合(map)。

     单列集合可以分为List接口和Set接口。
       List接口的特点是:有序,可重复,有索引值。List下有两个集合ArrarList集合和LinkedList集合。
          ArrayList集合底层数据结构是数组,查询快,增删慢。
          LinkedList集合数据结构是链表,查询慢,增删快。
       Set接口特点是不可重复,无索引值。
          Hashset的数据结构是哈希表,哈希表横向是数组,纵向是链表/红黑树,查询快,增删快。存储无序。
          LinkedHashSet集合特点哈希表和链表实现的Set接口,具有可预测的迭代次序 由哈希表保证元素唯一,链表保证存储和取出的元素一致。
          TreeSet可以根据一定的规则进行一个排序,排序的原则取决于构造方法,可分为自然排序和自定义排序。

     双列Map接口的特点:1.键值对存在映射关系。2.双列集合,一个键对应一个值。3.键不能重复,值可以重复。4.存储无序 。
          HashMap底层是哈希表,因此元素存储无序,可以存储任意引用数据类型,作为键和值,并且可以存储null值null键。
          LinkedMap是HashMapd的子类,数据结构是哈希表加链表,哈希表保证查询速度和元素不重复,链表保证存储和取出的元素一致。
          TreeMap的数据结构是红黑树,该集合根据其键的自然顺序进行排序,或者根据创建对象时提供的 Comparator 进行排序,具体取决于使用的构造方法。

点评

666666  发表于 2019-6-25 20:11
666  发表于 2019-6-23 12:50
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 加入黑马