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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© hx79481068 中级黑马   /  2019-4-4 09:15  /  1166 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1.map的概述:

                         map是一个双列集合,有key,有value

                         map的key的数据类型和value 的数据类型可以不一致

                         HashMap的key就是HashSet  ( hashMap底层依然是一个哈希表   )

                         HashMap底层是一个数组+ 链条  (1.7)

1. map中常用的方法(重点)
                       1.put(key,value)  
                                   map.put("a",对象)
                      2.get(key) 根据key获得value
                                   对象  对象名 =  map.get("a");
                      3.remove(Key)
                                     根据key ->删除对应的key的对象
                      4.containsKey
                                     包含某一个key (非常常用且重要的方法)
                      5.keySet(把对应key的所有数据利用set 进行返回)
                      6.entrySet(返回entry 对象  entry  是包含key,和value 且 下一个地址的内存地址  (hash)  )



     3.使用keySet 和entrySet进行遍历操作(重点)
   
     4._HashMap存储自定义类型键值  原理和hashSet 一模一样
   
     5.LinkedHashMap (了解)
   
     6.Hashtable 通常会和hashMap 组成面试题   hashMap 和hashTable  , concurrentHashMap(很难,java内存模型) 的区别  
   
     7._of    jdk1.9 的方法
   
                1. 简化添加元素的操作
                       1. list.of(“a”,"b","c")
                       2.  一旦创建之后,长度不可变



      面试题: hashMap 遇到相同key时,怎么处理





     HashMap
   
              1.hashMap的key 就是hashSet
   
                       1.构造方法  
   
                       2.添加方法
   
              2.entry 对象
   
                        1.entry 对象中有 key ,有value  还有下一个节点的内存地址值
   
                           思考 如何实现一个数组+ 链条
   
                        Person [] person = new Person[]
   
                        单链表 [] 单链表对象= new 单链表[];

      


1 个回复

倒序浏览
哈哈哈 这是背过了吗
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马