前言
本文主要是总结java集合–Map
之前的Collection集合只能存储单值,每次操作只能一个对象,要操作一对对象,就要使用Map集合,里边内容是按照键值对即key-value存储的。
https://blog.csdn.net/weixin_46623319/article/details/115026617
正文
一、Map接口的常用方法
1、定义:
public interface Map <K,V>
2、方法:
一般情况下使用Map集合的子类:HashMap、TreeMap、Hashtable
二、HashMap
1、定义:
public class HashMap<K,V> extends AbstractMap<K,v>
2、方法:
1)向集合中添加内容
2)得到全部的key和value值
3)循环输出Map中的内容
三、Hashtable
基本操作与HashMap没什么区别。但是Hashtable是不能向集合中插入null值的。
Demo:
---->HashMap和Hashtable的区别
四、TreeMap(排序)
TreeMap 子类是允许 key 进行排序的操作子类,其本身在操作的时候将按照 key 进行排序,另外,key 中的内容可以为任意的对象,但是要求对象所在的类必须实现 Comparable 接口。
Demo演示:
五、Map集合的输出
1、iterator()方法
在Collection接口中,直接使用iterator()方法输出,但是Map接口中没有此方法,因为Map接口是以键值对的形式进行存储的。如果使用Iterator进行输出,可以按如下步骤:
1)使用 Map 接口中的 entrySet()方法将 Map 接口的全部内容变为 Set 集合
2)使用 Set 接口中定义的 iterator()方法为 Iterator 接口进行实例化
3)使用 Iterator 接口进行迭代输出,每一次的迭代都可以取得一个 Map.Entry 的实例
4)通过 Map.Entry 进行 key 和 value 的分离
Map.Entry提供的方法主要有:
K getKey() -------得到key值
V getValue() ------得到value值
Demo演示:
2、foreach方法
Demo演示: