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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

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

54 个回复

倒序浏览
1.Map接口的子类有什么特点,谈谈你所了解的Map实现类?
答:
Map接口是双列集合的顶层接口,它是键值对的形式存储数据的,键值是一一对应的,并且键是唯一的而值不是。
Map接口有HashMap和TreeMap两个子类
        HashMap:1.底层数据结构是哈希表;
                         2.元素存取也是无序的
                         3.HashMap还有可以存储Null,但是Null也会遵循唯一的特点
                         4.底下还有LinkedHashMap子类,它是有序的。
        TreeMap:
                        1.使用泛型中类的自然顺序排序
                        2.使用Comparator比较器进行比较的。
                                (Comparable和Comparator两种比较器,后者更有利于后期维护)
               
2.目前为止,我们所学的遍历map集合有几种方式?
答:两种;
1.通过键找值。
        获取所有键的集合。用keySet()方法实现
        遍历键的集合,获取到每一个键。用增强for实现
        根据键去找值。用get(Object key)方法实现
       
2.通过获取键值对对象集合
        获取所有键值对对象的集合
        Set<Map.Entry<K,V>> entrySet():获取所有键值对对象的集合
        遍历键值对对象的集合,得到每一个键值对对象
        用增强for实现,得到每一个Map.Entry
        根据键值对对象获取键和值
        用getKey()得到键
        用getValue()得到值
       
3.请用自己的语言描述你所了解的集合体系
答:集体体系分为单列和双列两种;
单列:
        Collection接口是单列集合的顶层接口,它没有索引值,
        Collection接口底下还有两个子接口List,Set。
                List接口:
                        特点:1.有序;2.元素可以重复;3.有索引值
                        底下有ArrayList和LinkedList两个实现类
                                ArrayList底层数据结构是数组,所以有着查询快(数组有索引值,能够快速定位元素),
                                                                                                         增删慢(数据增删需要创建出新的数组),两个特点。
                                                                                         
                                LinkedList底层数据结构是链表,所以有着查询慢(链表查询每次都是从头开始查起),
                                                                                                增删快的特点(链表在增删数据只需改变下一个元素的地址值),
                                                                                                        两个特点。
                                       
                Set接口:
                        特点:1.无序(底层是哈希表);
                                  2.元素不可重复(底层是哈希表);
                                  3.没有索引值(只能使用迭代器和增强for循环遍历)
                        底下有HashSet和TreeSet两个实现类
                                HashSet底层是由哈希表组成(数组+链表/红黑树),所以HashSet集合是无序、不重复的
                                        HashSet集合保证元素不重复的,是需要重写hashCode()、equals()两个方法。
                                                HashSet底下还有一个LinkedHashSet类,它是有序的
                                TreeSet集合它可以根据元素的进行自然顺序排序,也可以通过Comparable或者Comparator进行自定义排序。
双列:
        Map接口是双列集合的顶层接口,它是键值对的形式存储数据的,键值是一一对应的,并且键是唯一的而值不是。
        Map接口底下有HashMap和TreeMap两个实现类
                HashMap:
                                1.底层也是哈希表;2.元素存取也是无序的
                                HashMap还有可以存储Null,但是Null也会遵循唯一的特点
                                底下还有LinkedHashMap实现类,它是有序的。
                               
                TreeMap:
                                1.使用泛型中类的自然顺序排序
                                2.使用Comparator比较器进行比较的。(Comparable和Comparator两种比较器,后者更有利于后期维护)
回复 使用道具 举报
1.Map接口的子类有什么特点,谈谈你所了解的Map实现类?

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

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

答:2种。
      一种是通过键找值,通过调用keySet()方法得到所有key的Set集合,使用增强for遍历,获取到每个key对应的value。
      另一种是通过键值对找键和值,通过调用entrySet()方法得到所有键值对的Set集合,使用增强for遍历,调用entry的getKey()和getValue()方法获取到键和值。

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

答:集合体系包含单列集合Collection和双列集合Map。

    Collection特点:没有索引,是所有单列集合的顶层接口。
    Collection有List和Set两个子接口。
             List特点:元素可重复,有序,有索引值。主要有ArrayList和LinkedList实现类。
                ArrayList特点:底层是数组结构,增删慢,查询快;
                LinkedList特点:底层是链表结构,增删快,查询慢。
             Set特点:元素不可重复,无索引值。主要有HashSet,LinkedHashSet,TreeSet。
                HashSet特点:无序,底层数据结构是哈希表+链表/红黑书;
                LinkedHashSet特点:是HashSet的子类,有序;
                TreeSet特点:元素可以进行排序。

    Map特点:键值对形式出现,键不可重复,值可重复,键和值一一对应,是所有双列集合的顶层接口。
               Map的实现类有HashMap:底层数据结构是哈希表,元素存储无序。
                 TreeMap:元素是可以进行排序的。
回复 使用道具 举报
1.Map接口的子类有什么特点,谈谈你所了解的Map实现类?
答:
双列集合,无索引,键不可重复,值可以重复,一个键对应一个值
HashMap:无序
TreeMap:有序

2.目前为止,我们所学的遍历map集合有几种方式?
答:
两种。一种是使用keySet()方法获取键的Set集合然后遍历键的集合,根据键找值
还有一种是使用EntrySet()方法 获取键值对对象的Set集合,然后遍历此集合,根据getKey()和getValue()方法找到对应的键值

3.请用自己的语言描述你所了解的集合体系
答:
集合分为Collection接口和Map接口。分别是单列集合和双列集合。
Collection集合是单列集合的顶层接口。
Map集合是双列集合的顶层接口:无索引,键值对的映射关系,键不可重复,值可以重复,一个键对应一个值
Collection又分为List集合和Set集合。
List集合的特点是:有索引,存储元素可重复。
Set集合的特点是:无索引,存储元素不可重复。
List集合又分为ArrayList集合和LinkedList集合。
ArrayList集合的底层是数组。特点是增删慢,查询快。
LinkedList集合的底层是链表。特点是增删快,查询慢。
Set集合又分为HashSet集合和TreeSet集合。
HashSet集合底层是哈希表存储数据结构,由数组和链表/红黑树组成,无序。
TreeSet集合的特点是有序。
HashSet集合底下还有LinkedHashSet集合。
LinkedHashSet集合有序。
Map集合分为HashMap集合和TreeMap集合。
HashMap集合的特点是无序。
TreeMap集合的特点是有序。
回复 使用道具 举报
1.Map接口的子类有什么特点,谈谈你所了解的Map实现类?
答:特点:键值对数据,一存就是一对;键不能重复,具有唯一性,值可以重复;使用Map集合存储数据,键和值可以是null,因为所有的引用数据类型的默认值是null。
    HashMap作为Map的实现类,除了具备上述特点之外,它的元素存取无序。

2.目前为止,我们所学的遍历map集合有几种方式?
答:目前所学的Map集合遍历方式有两种:
        1.根据键找值
          (1).先获取所有的键的集合
          (2).遍历键的集合,拿到所有的键
          (3).根据键找到对应的值
        2.拿到键值对映射关系,获取键、值
          (1).先拿到所有的键值对映射关系的集合
          (2).遍历键值对的集合得到每一个键值对对象
          (3).分别调用方法,获取映射中的键和值


3.请用自己的语言描述你所了解的集合体系
答:集合分为List单列集合和Map双列集合两个接口
1.List单列集合有两个子接口,分别是List接口(元素可重复)和Set接口(元素不可重复)
  (1)List的实现类有ArrayList和LinkedList以及Vector
  (2)Set的实现类有HashSet和TreeSet
2.Map双列集合有HashMap集合
回复 使用道具 举报
1.Map接口的子类有什么特点,谈谈你所了解的Map实现类?

特点:
(1)键值对映射的集合
(2)键是唯一的,值是不唯一的
(3)键跟值是一一对应的

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

两种:
(1)用键找值。先用Map的keyGet()方法获取集合所有的键,然后用Map中的get()方法根据键获取值。
(2)先用Map中的entrySet()方法获取集合所有的键值对的对象集合,再用Entry接口中的getKey()跟getValue()方法获取对应的键跟值

3.请用自己的语言描述你所了解的集合体系
集合体系分为单列集合跟双列集合两种。
单列集合又分有索引,可重复的List集合接口和无索引,不可重复的Set集合接口。
List集合接口有两个常用的实现类ArrayList集合,特点增删慢,查询快和LinkedList集合,特点:增删快,查询慢
Set集合接口有两个常用的实现类HashSet,特点无序,不可重复。下面有一个子类LinkedHashSet有序,可重复。还有一个实现类是TreeSet可以根据元素的自然顺序排序。
双列集合:Map接口:键值对的形式,键值一一对应,键是唯一的,值不是。下面有两个常用的实现类:
HashMap:底层的链表,保证键的唯一。元素存储无序。下面有个子类LinkedHashMap元素存储有序
TreeMap:使用泛型类自然排序。使用Comparator比较器排序

回复 使用道具 举报


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


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

特点:无索引值,键是唯一的,值不是唯一的,是键对的形式进行存储。

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

2种,第一种是Map中keySet方法,根据键获取值,遍历所有键获取所有值,第二种是Map的entrySet方法,使用entry中的get获取键和值。

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

集合分为单列集合(Collection)和双列集合(Map),有各自的遍历方式,单列集合(Collection)下又分两个接口List(有序、元素可重复、有索引值)和Set(元素不可重复,没有索引值),Map是键值对的形式储存数据,键值一一对应,键是唯一的,值不是唯一的。


回复 使用道具 举报
1.Map接口的子类有什么特点,谈谈你所了解的Map实现类?

特点是存储键值对,键值对一一对应,键不可重复,值可以重复

?       有hashmap和treemap两个实现类

?        hashmap底层是哈希表,无序,可存储null,但是键也需遵循唯一性,子类linkhashmap有序

?        treeMap底层是红黑树,使用泛型中类的自然顺序来排序,也可使用Comparator比较器进行排序,建议使用比较

?        器,因为比较器将比较规则单独定义,有利于程序维护性

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

通过遍历键值对map集合进行遍历(keyset()方法)和通过遍历键值对map集合(entryset()方法)进行遍历.

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

分为单列集合和双列集合

单列集合的顶层接口是collection(无索引),其下分为set集合和list集合

?    list集合特点是有序,有索引值,存储元素可重复,拥有arraylist和linklist两个实现类,

?        ArrayList集合底层是数组结构实现,默认长度是10,特点是查询快(有索引值)、增删慢(增删需要创建新的数组

?        (超过10以后));

?        LinkedList集合底层是链表结构实现,特点是查询慢(每次查询需要从头开始)、增删快(链表结构增删只需改变

?        前后地址值)

?    set集合特点是无序,无索引值,存储元素具有唯一性(存储元素的时候会先计算类的哈希值,确定存储位置,存储位置

?    元素为零直接存储,不为零会比较哈希值是否重复,重复则调用equals方法比较对象内容,因此存储元素需重写

?     hashcode和equals方法,全部相同则不存储)

?         hashset底层是哈希表(数组加链表,长度超过8则为数组加红黑树),子类LinkHashSet有序

?        TreeSet集合可以进行自然排序和比较器排序,升序为this-o(传入的参数),降序相反,返回结果整数会顺序排列,负

?        数会倒叙排列,0代表值相同,需要引入次要比较条件

双列集合学到的是map接口,特点是存储键值对,键值对一一对应,键不可重复,值可以重复,有hashmap和treemap两

个实现类

?        hashmap底层是哈希表,无序,可存储null,但是键也需遵循唯一性,子类linkhashmap有序

?        treeMap底层是红黑树,使用泛型中类的自然顺序来排序,也可使用Comparator比较器进行排序,建议使用比较

?        器,因为比较器将比较规则单独定义,有利于程序维护性
回复 使用道具 举报 1 0
1.Map接口的子类有什么特点,谈谈你所了解的Map实现类?
特点: 元素由键和值构成,成对存储;键唯一不能重复;
已知的Map实现类有HashMap 和 TreeMap
HashMap是无序的;
TreeMap存储元素时按排序规则对键进行排序,要求键有比较方法,或者构建时插入比较器Comparator;

2.目前为止,我们所学的遍历map集合有几种方式?
二种遍历方式:
  1.通过keySet()方法获取map集合的所有键作为一个集合;在通过键获取其对应的值完成遍历;
  2.通过entrySet()方法获取map集合的所有键值对对象集合(Map.Entry<K,V>),在通过此对象的方法获取键和值完成遍历

3.请用自己的语言描述你所了解的集合体系
集合分为单列集合(Collection)和双列集合(Map)
其中单列集合(Collection)下分为List(可重复的)和Set(不可重复的)两类;
List:
  ArrayList:查询快,增删慢(底层由数组实现)
  LinkedList:查询慢,增删快递(底层由链表实现)
Set:
  HashSet:存取无序
  LinkedHashSet:HashSet的子类,存取有序
  TreeSet:存储的元素按比较规则有序排列;

双列集合(Map)下有HashMap和TreeMap
HashMap:存取无序
TreeMap:存取有序,要求Key有比较方法,或者构建时插入比较器Comparator;
回复 使用道具 举报


今天我们学习了Map集合,请根据自己的理解回答下面问题:
1.Map接口的子类有什么特点,谈谈你所了解的Map实现类?
1.键值对存储;2.键必须是唯一值且不可重复,值可以重复,键与值一一对应。
2.目前为止,我们所学的遍历map集合有几种方式?
俩种  1:由健找值;2由健值对应关系找值。
3.请用自己的语言描述你所了解的集合体系
集合是储存数据的容器,分为单列collection和双列map。collection下又分为list储存元素可重复的集合和不可重复的集合set。此时集合还都是接口。list实现类有arraylist迭代顺序无保证和linkedlist迭代顺序有保证。set集合下有hashset和treeset集合,hashset有个linkedhashset集合弥补hashset集合的迭代顺序无保证。双列集合map下有hashmap和treemap集合
回复 使用道具 举报
刘鸿 中级黑马 2019-4-26 21:31:27
8#
1.Map接口的子类有什么特点,谈谈你所了解的Map实现类?
        Map接口的子类特点:都有一个键值对,键和值是一一对应的;键不能重复,值可以;元素储存是无序的
        Map的实现类有HashMap类,它底层是由哈希表构成,所以它储存是无序的,而且键具有唯一性。



2.目前为止,我们所学的遍历map集合有几种方式?
        遍历map集合有两种方式。第一种是利用hashSet方法获得键的集合,再遍历该集合获得对应的值,并输出键和值;第二种是利用entrySet方法获得包含键、值的对象,再调用它的getKey和getvalue方法获得map集合的键值。



3.请用自己的语言描述你所了解的集合体系
        集合有两大类,分别是Collection和Map。
            Collection是单列集合,它包含了List、Set。
                List内元素是可重复、有索引、储存有序的,它的实现类有:ArrayList、LinkedList。
                    ArrayList特点是:查询快,增删慢。
                    LinkedList特点是:查询慢,增删快。
                Set内元素是不可重复,无索引,它的实现类有:HashSet、TreeSet、LinkedSet。
                    HashSet底层是哈希表所以储存无序
                    LinkedSet底层是链表所以储存有序。
                    TreeSet会按自然顺序对元素自动排序。
            Map是双列集合,拥有一对一一对应的键、值,键不可重复,值可以重复。它的实现类有:HashMap。
                
回复 使用道具 举报
1.Map接口的子类有什么特点,谈谈你所了解的Map实现类?
a.集合中的键值不能重复,但是可以为null,为null时候需要重写hashCode方法和equal方法。
b.集合中的键值和value值是一 一对应的映射关系存储的。
c.集合中键是唯一的,但是value值不是唯一的。

2.目前为止,我们所学的遍历map集合有几种方式?
两种,分别为keySet()和entrySet()。
keySet():获取map集合中所有键值的集合,通过增强for遍历出键值然后根据键值求value值。
entrySet():获取map集合中的所有键值对对象集合,通过增强for遍历分别求出键值和value值。

3.请用自己的语言描述你所了解的集合体系
最上层是Object类。                                                                     
顶层单列接口:Collection                                                          顶层双列接口:Map                 
继承单列Collection接口的类:List    和     Set                              继承Map接口的类:HashMap 和TreeMap
继承List接口的类:ArrayList集合和LinkedList集合                        继承HashMap的类:LinkedHashMap
继承Set接口的类:HashSet集合和TreeSet集合
继承HashSet接口的类:LinkedHashSet集合

点评

map下的实现类并不是所有的都允许空值空键,比如hashtable就不允许空键  发表于 2019-4-27 17:15
回复 使用道具 举报
郑峰

1.Map接口的子类有什么特点,谈谈你所了解的Map实现类?
答:Map接口的子类特点:1.参数列表为键值对 2.一个键对应一个值 3.元素存取无序 4.键不可重复
Map实现类:HashMap(元素存取无序);TreeMap(元素存取有序,按指定规则排列);LinkedHashMap(有序存取)

2.目前为止,我们所学的遍历map集合有几种方式?
答:遍历map集合有两种方式:keySet方法、entrySet方法
1.(keySet方法)先获取集合所有键的集合,遍历键集合,获取键对应的map值,输出键值对
2.(entrySet方法)先获取map集合的所有键值对的集合,遍历键值对集合,获取对应的键和值,输出键值对

3.请用自己的语言描述你所了解的集合体系
答:集合分支:Collection接口和Map接口

Collection接口分支:List接口、Set接口
List接口分支:ArraryList类、LinkedList类
Set接口分为:HashSet类、TreeSet类;HashSet类存在LinkedHashSet子类

Map接口被HashMap类和TreeMap类实现,HashMap类存在LinkedHashMap子类
回复 使用道具 举报
1.Map接口的子类有什么特点,谈谈你所了解的Map实现类?
        Map接口的子类特点:都有一个键值对,键和值是一一对应的;键不能重复,值可以;元素储存是无序的
        Map的实现类有HashMap类,它底层是由哈希表构成,所以它储存是无序的,而且键具有唯一性。



2.目前为止,我们所学的遍历map集合有几种方式?
        遍历map集合有两种方式。第一种是利用hashSet方法获得键的集合,再遍历该集合获得对应的值,并输出键和值;第二种是利用entrySet方法获得包含键、值的对象,再调用它的getKey和getvalue方法获得map集合的键值。



3.请用自己的语言描述你所了解的集合体系
        集合有两大类,分别是Collection和Map。
            Collection是单列集合,它包含了List、Set。
                List内元素是可重复、有索引、储存有序的,它的实现类有:ArrayList、LinkedList。
                    ArrayList特点是:查询快,增删慢。
                    LinkedList特点是:查询慢,增删快。
                Set内元素是不可重复,无索引,它的实现类有:HashSet、TreeSet、LinkedSet。
                    HashSet底层是哈希表所以储存无序
                    LinkedSet底层是链表所以储存有序。
                    TreeSet会按自然顺序对元素自动排序。
            Map是双列集合,拥有一对一一对应的键、值,键不可重复,值可以重复。它的实现类有:HashMap。
                
回复 使用道具 举报
今天我们学习了Map集合,请根据自己的理解回答下面问题:
1.Map接口的子类有什么特点,谈谈你所了解的Map实现类?
Map集合是是一个接口,由键的类型和值的类型组成,将键映射到值的对象,不能包含重复的键,每个键可以映射到最多一个值。
Map实现类有三个:HashMap/TreeMap/HashTable
2.目前为止,我们所学的遍历map集合有几种方式?
两种:一种根据键找值另一种拿到键值对映射关系,获取键值
3.请用自己的语言描述你所了解的集合体系
List,Set,Map都是接口,前两个继承至collection接口,Map为独立接口
Set接口下有hashSet,LinkedHashSet,TreeSet
List下有ArrayList,Vector,LinkedList
Map下有Hashtable,LinkedHashMap,HashMap,TreeMap
collection接口下还有个Queue接口,有PriorityQueue类
List 有序,可重复
ArrayList
优点: 底层数据结构是数组,查询快,增删慢。
缺点: 线程不安全,效率高
Vector
优点: 底层数据结构是数组,查询快,增删慢。
缺点: 线程安全,效率低
LinkedList
优点: 底层数据结构是链表,查询慢,增删快。
缺点: 线程不安全,效率高
Set 无序,唯一
HashSet
底层数据结构是哈希表。(无序,唯一)
1.依赖两个方法:hashCode()和equals()
LinkedHashSet
底层数据结构是链表和哈希表。(FIFO插入有序,唯一)
1.由链表保证元素有序
2.由哈希表保证元素唯一
TreeSet
底层数据结构是红黑树。(唯一,有序)
1.保证元素排序:
自然排序
比较器排序
2.保证元素唯一性:
根据比较的返回值是否是0来决定
回复 使用道具 举报
1.Map接口的子类有什么特点,谈谈你所了解的Map实现类?
        Map接口的子类特点:都有一个键值对,键和值是一一对应的;键不能重复,值可以;元素储存是无序的
        Map的实现类有HashMap类,它底层是由哈希表构成,所以它储存是无序的,而且键具有唯一性。



2.目前为止,我们所学的遍历map集合有几种方式?
        遍历map集合有两种方式。第一种是利用hashSet方法获得键的集合,再遍历该集合获得对应的值,并输出键和值;第二种是利用entrySet方法获得包含键、值的对象,再调用它的getKey和getvalue方法获得map集合的键值。



3.请用自己的语言描述你所了解的集合体系
        集合有两大类,分别是Collection和Map。
            Collection是单列集合,它包含了List、Set。
                List内元素是可重复、有索引、储存有序的,它的实现类有:ArrayList、LinkedList。
                    ArrayList特点是:查询快,增删慢。
                    LinkedList特点是:查询慢,增删快。
                Set内元素是不可重复,无索引,它的实现类有:HashSet、TreeSet、LinkedSet。
                    HashSet底层是哈希表所以储存无序
                    LinkedSet底层是链表所以储存有序。
                    TreeSet会按自然顺序对元素自动排序。
            Map是双列集合,拥有一对一一对应的键、值,键不可重复,值可以重复。它的实现类有:HashMap。
                
回复 使用道具 举报
今天我们学习了Map集合,请根据自己的理解回答下面问题:
1.Map接口的子类有什么特点,谈谈你所了解的Map实现类?
键值对映射关系 一个键对应一个值
键不能重复,值可以重复 元素存取无序
2.目前为止,我们所学的遍历map集合有几种方式?
keySet()....get(Object key)
Set<Map.Entry<K,V>> entrySet():......Map.Entry
3.请用自己的语言描述你所了解的集合体系
回复 使用道具 举报


今天我们学习了Map集合,请根据自己的理解回答下面问题:
1.Map接口的子类有什么特点,谈谈你所了解的Map实现类?
存入的是一对相应的值,键是唯一的,而值不是唯一的,自己建新类的话不去要重写hashcode和equals这样更好的保证元素的唯一性。
2.目前为止,我们所学的遍历map集合有几种方式?
三种方式:
        1:先取键的集合,然后遍历键再用键值去获取值
        2 :  用迭代遍历
        3 :获取键值对集合,再遍历键值对集合根据键值对集合获取键与值
3.请用自己的语言描述你所了解的集合体系
想存什么存什么,没有的话自己造。
存的是地址值,一个就是一个地址值。
回复 使用道具 举报
.Map接口的子类有什么特点,谈谈你所了解的Map实现类?

特点:无索引值,键是唯一的,值不是唯一的,是键对的形式进行存储。

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

2种,第一种是Map中keySet方法,根据键获取值,遍历所有键获取所有值,第二种是Map的entrySet方法,使用entry中的get获取键和值。

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

集合分为单列集合(Collection)和双列集合(Map),有各自的遍历方式,单列集合(Collection)下又分两个接口List(有序、元素可重复、有索引值)和Set(元素不可重复,没有索引值),Map是键值对的形式储存数据,键值一一对应,键是唯一的,值不是唯一的。
回复 使用道具 举报
今天我们学习了Map集合,请根据自己的理解回答下面问题:
1.Map接口的子类有什么特点,谈谈你所了解的Map实现类?
Map集合是是一个接口,由键的类型和值的类型组成,将键映射到值的对象,不能包含重复的键,每个键可以映射到最多一个值。
Map实现类有三个:HashMap/TreeMap/HashTable
2.目前为止,我们所学的遍历map集合有几种方式?
两种:一种根据键找值另一种拿到键值对映射关系,获取键值
3.请用自己的语言描述你所了解的集合体系
List,Set,Map都是接口,前两个继承至collection接口,Map为独立接口
Set接口下有hashSet,LinkedHashSet,TreeSet
List下有ArrayList,Vector,LinkedList
Map下有Hashtable,LinkedHashMap,HashMap,TreeMap
collection接口下还有个Queue接口,有PriorityQueue类
List 有序,可重复
ArrayList
优点: 底层数据结构是数组,查询快,增删慢。
缺点: 线程不安全,效率高
Vector
优点: 底层数据结构是数组,查询快,增删慢。
缺点: 线程安全,效率低
LinkedList
优点: 底层数据结构是链表,查询慢,增删快。
缺点: 线程不安全,效率高
Set 无序,唯一
HashSet
底层数据结构是哈希表。(无序,唯一)
1.依赖两个方法:hashCode()和equals()
LinkedHashSet
底层数据结构是链表和哈希表。(FIFO插入有序,唯一)
1.由链表保证元素有序
2.由哈希表保证元素唯一
TreeSet
底层数据结构是红黑树。(唯一,有序)
1.保证元素排序:
自然排序
比较器排序
2.保证元素唯一性:
根据比较的返回值是否是0来决定
回复 使用道具 举报 1 0


今天我们学习了Map集合,请根据自己的理解回答下面问题:
1.Map接口的子类有什么特点,谈谈你所了解的Map实现类?
键值对映射关系 一个键对应一个值
键不能重复,值可以重复 元素存取无序
2.目前为止,我们所学的遍历map集合有几种方式?
keySet()....get(Object key)
Set<Map.Entry<K,V>> entrySet():......Map.Entry
3.请用自己的语言描述你所了解的集合体系
集合分为单列集合(Collection)和双列集合(Map),有各自的遍历方式,单列集合(Collection)下又分两个接口List(有序、元素可重复、有索引值)和Set(元素不可重复,没有索引值),Map是键值对的形式储存数据,键值一一对应,键是唯一的,值不是唯一的。
回复 使用道具 举报
LPY 中级黑马 2019-4-26 21:34:04
19#
今天我们学习了Map集合,请根据自己的理解回答下面问题:
1.Map接口的子类有什么特点,谈谈你所了解的Map实现类?
1.键值对存储;2.键必须是唯一值且不可重复,值可以重复,键与值一一对应。
2.目前为止,我们所学的遍历map集合有几种方式?
俩种  1:由健找值;2由健值对应关系找值。
3.请用自己的语言描述你所了解的集合体系
集合是储存数据的容器,分为单列collection和双列map。collection下又分为list储存元素可重复的集合和不可重复的集合set。此时集合还都是接口。list实现类有arraylist迭代顺序无保证和linkedlist迭代顺序有保证。set集合下有hashset和treeset集合,hashset有个linkedhashset集合弥补hashset集合的迭代顺序无保证。双列集合map下有hashmap和treemap集合
回复 使用道具 举报
1.Map接口的子类有什么特点,谈谈你所了解的Map实现类?
答:Map接口的子类特点:1.参数列表为键值对 2.一个键对应一个值 3.元素存取无序 4.键不可重复
Map实现类:HashMap(元素存取无序);TreeMap(元素存取有序,按指定规则排列);LinkedHashMap(有序存取)

2.目前为止,我们所学的遍历map集合有几种方式?
俩种  1:由健找值;2由健值对应关系找值。

3.请用自己的语言描述你所了解的集合体系
集合是储存数据的容器,分为单列collection和双列map。collection下又分为list储存元素可重复的集合和不可重复的集合set。此时集合还都是接口。list实现类有arraylist迭代顺序无保证和linkedlist迭代顺序有保证。set集合下有hashset和treeset集合,hashset有个linkedhashset集合弥补hashset集合的迭代顺序无保证。双列集合map下有hashmap和treemap集合
回复 使用道具 举报
123下一页
您需要登录后才可以回帖 登录 | 加入黑马