• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
你的小铃铛呀
博客园    首页    新随笔    联系   管理    订阅  订阅

Map集合

Map 是一种键-值对(key-value)集合,其中,键对象不允许重复,而值对象可以重复

Map 接口主要有两个实现类:HashMap 类和 TreeMap 类。其中,HashMap 类按哈希算法来存取键对象,而 TreeMap 类可以对键对象进行排序。

 

 

 上图所示既可以放String类型,又可以放对象,其实是Map后面省略了,如下

 

 

 这里默认的,Object是所有类的父类,比较特殊,所有上面才会允许存,改一下,

 

 

 这里将Map集合的键改成book这个类型,由于S键是字符串类型就会报错

 这里又加了一个list集合,发现也是可以的,其实只要和Map集合<>里面的类型保持一致就行了,没有写的就是默认Object类型的

还有就一种通过键去取值的时候可能会出错

这里报错而前面没有报错,是因为前面是String类型放进object里面,属于小放大不会报错,而这里是object类型放进String类型是大放小,需要进行强制类型转换才行

主要的四个方法:

put方法,把一个键值对放进Map集合里。键在前面。值在后面。

Map<Object,Object> hashMap=new HashMap();
hashMap.put("S键","后退");

这里S键是是键,后退是S键对应的值。

get方法,取得时候是根据键去键对应的值

Map<Object,String> hashMap=new HashMap();
hashMap.put("S键","后退");
String value=hashMap.get("S键");

这里集合里面存的键是S键,你通过这个取,可以得到后退这个值

remove方法  是通过键,将其从map集合里面移除

Map<Object,String> hashMap=new HashMap();
hashMap.put(
"S键","后退");
hashMap.remove(
"S键");

这里是删除S键对应的键值对

containsKey方法,用来判断是否存在这个键,正确就返回true,错就返回false

Map<Object,String> hashMap=new HashMap();
hashMap.put(
"S键","后退");
boolean isExit=hashMap.containsKey("S键");

这里判断的键是S键,返回的结果是true

还有一个用来将map集合转成set集合的方法keySet()方法

 Map<Object,String> hashMap=new HashMap();

 hashMap.put("S键","后退");

 book book=new book();

 hashMap.put(book,"三国演义");

 List list=new ArrayList();

 list.add(one);

 hashMap.put(list,"集合");

 Set set=hashMap.keySet();

与之相似的还有另一种方法entrySet()方法

Map<Object,String> hashMap=new HashMap();

 hashMap.put("S键","后退");

 book book=new book();

 hashMap.put(book,"三国演义");

 List list=new ArrayList();

 list.add(one);

 hashMap.put(list,"集合");

 Set set=hashMap.entrySet();

但是里面返回的结果不一样,如下图所示

posted @ 2021-04-19 11:46  你的小铃铛呀  阅读(190)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3