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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 小江哥 黑马粉丝团   /  2018-8-25 14:54  /  831 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 小江哥 于 2018-8-25 14:58 编辑

知识点总结
Map集合:
                   map集合中的元素都是成对出现,成对存储的
                  map集合中的元素都是以一对键和值的形式组成存在的,称为键值对,理解为夫妻对
                  map集合中的键不能重复存储,值可以重复
                  map集合中的每一个键 对应着一个值
方法:
V put(K key, V value)  把指定的键与指定的值添加到Map集合中
V remove(Object key) 把指定的键 所对应的键值对元素 在Map集合中删除,返回被删除元素的值
Set<Map.Entry<K,V>> entrySet() 获取到Map集合中所有的键值对对象的集合(Set集合)
V get(Object key) 根据指定的键,在Map集合中获取对应的值
Set<K> keySet() 获取Map集合中所有的键,存储到Set集合中

Map集合遍历的两种方式
方式1:根据键找值的方式
                //a, 获取到Map集合中所有的键,返回对应的Set集合
                //b, 遍历键的集合,获取到每一个键
                //c, 通过键,找到对应的值

                //获取到Map集合中所有的键,返回对应的Set集合
                Set<String> keys = map.keySet();
                //遍历键的集合,获取到每一个键
                for (String key : keys) {
                        //通过键,找到对应的值
                        Student s = map.get(key);
                        System.out.println( key + "..." + s.getName() + "..." + s.getAge() );
                }

方式2:根据键值对对象找键和值的方式
                //a, 获取Map集合中所有的键值对元素,返回对应的Set集合
                //b, 遍历键值对元素集合,获取到每一个键值对元素对象
                //c, 通过键值对元素对象,获取对应的键,和对应的值

                //获取Map集合中所有的键值对元素,返回对应的Set集合
                Set< Map.Entry<String, Student>> entrySet = map.entrySet();
                //遍历键值对元素集合,获取到每一个键值对元素对象
                for (Map.Entry<String, Student> entry : entrySet) {
                        //通过键值对元素对象,获取对应的键,和对应的值
                        //找键
                        String key = entry.getKey();
                        //找值
                        Student s = entry.getValue();
                        //打印
                        System.out.println( key+"..."+s.getName()+"..."+s.getAge() );
                }

HashMap:
特点:
                 Map集合的子集合
                 底层采用哈希表结构
                 HashMap集合中的key不能重复,通过重写hashCode() equals()方法来保证键的唯一。
                 不能保证元素存与取的顺序完全一致
LinkedHashMap:
特点:
HashMap集合的子集合
底层采用哈希表+链表结构
LinkedHashMap集合中的key不能重复,通过重写hashCode() equals()方法来保证键的唯一。



0 个回复

您需要登录后才可以回帖 登录 | 加入黑马