Map接口的特点
底层原理分析
理解:
1 .k - v 最后是 HashMap$Node ,里面存放了四个数据 newNode(hash,key,value,null)
2. EntrySet的出现是为了方便k - v遍历 ,EntrySet储存 k - v 的方式是存储其在HashMap$Node里的路径,而不是完全把数值复制粘贴过来
- 结合上右图,EntrySet是将key单独存放在了一个set集合里,将values单独存放在了一个Collection集合里,因此是可以分别单独遍历取出key或values值
- 因为EntrySet中有获取key值或values值的方法getkey() ,getValue(),所以下下图中遍历需要对obj对象向下转型,转成EntrySet类型后变可以调用getkey() ,getValue()方法
Map接口的常用方法
remove,get等方法都是通过key 删除或者获取value
Map接口的遍历方式
练习题