当前位置: 首页 > news >正文

Java中Map接口常用的方法

java.util.Map接口中常用的方法:

    1.Map和Collection没有继承关系

    2.Map集合以key和value的方式存储数据:键值对

        key和value都是引用数据类型

        key和value都是存储对象的内存地址

        key起到主导的地位,value是key的一个附属品

    3.Map接口中常用的方法:

      V put(K key,V value)                                 向Map集合中添加键值对

      V get(Object key)                                     通过key获取value

      void clear()                                               清空Map集合

      boolean containsKey(Object key)            判断Map集合中是否包含某个key

      boolean containsValue(Object value)      判断Map集合中是否包含某个value

      boolean isEmpty()                                    判断Map集合中元素个数是否为0

      Set<k> keySet()                                       获取Map集合所有的key(所有的键是一个set集合)

      V remove(Object key)                              通过key删除键值对

      int size()                                                   获取Map集合中键值对的个数

      Collection<V> values()                            获取Map集合中所有的value,返回一个Collection

      Set<Map.Entry<k,v>> entrySet()            将Map集合转换成Set集合

      假设现在有一个Map集合,如下所示:

        map1集合对象

        key                  value

 ——————————————————————

      1                      zhangsan

      2                      lisi

      3                      wangwu

      4                      zhaoliu  --> 这个东西是什么?Map.Entry

   Set set = map1.entrySet();

   set集合对象

   1=zhangsan 【注意:Map集合通过entrySet()方法转换成的这个Set集合,Set集合中元素的类型是Map.Entry<k,v>】

   2=lisi 【Map.Entry和String一样,都是一种类型的名字,只不过:Map.Entry是静态内部类,是Map中的静态内部类】

   3=wangwu

   4=zhaoliu

public class MapTest01{

   public static void main(String[] args){

     //创建Map集合对象

    Map<Integer,String> map = new HashMap<>();

    //向Map集合中添加键值对

   map.put(1,"zhangsan");  //1在这里进行了自动装箱

   map.put(2,"lisi");

   map.put(3,"wangwu");

   map.put(4,"zhaoliu");

   //通过key获取value

  String value = map.get(2);

  System.out.println(value);

  //获取键值对的数量

  System.out.println("键值对的数量:"+map.size());

 //通过key删除key-value

  map.remove(2);

  System.out.println("键值对的数量:"+map.size());

  //判断是否包含某个key

 //contains方法底层调用的都是equals进行比对的,所以自定义的类型需要重写equals方法

  System.out.println(map.containsKey(4));   //true

 //判断是否包含某个value

  System.out.println(map.containsValue("wangwu"));  //true

  //获取所有的value

  Collection<String> values = map.values();

  for(String s:value){

    System.out.println(s);

  }

 //清空map集合

 map.clear();

 System.out.prinltn("键值对的数量:"+map.size());

 //判断是否为空

 System.out.println(map.isEmpty());  //true

  }

 }

http://www.lryc.cn/news/286460.html

相关文章:

  • Linux软件包管理器yum
  • Linux中NFS服务器的搭建和安装
  • c递归算法模型
  • 力扣740. 删除并获得点数
  • spring和springboot的区别
  • imgaug库图像增强指南(35):【iaa.Fog】——轻松创建自然雾气场景
  • 网络安全--防御保护02
  • UE5 C++学习笔记 常用宏的再次理解
  • SpringBoot整合SSE
  • mysql-进阶篇
  • Js中的构造函数
  • [小程序]页面事件
  • vue echarts地图
  • v38.Switch语句
  • 如何进行产品的人机交互设计?
  • 【ARMv8M Cortex-M33 系列 7.3 -- EXC_RETURN 与 LR 及 PC 的关系详细介绍】
  • Linux之权限(内容详细,细节满满)
  • 了解云工作负载保护:技术和最佳实践
  • 【Godot4自学手册】第三节设置主人公的动画
  • excel学习1
  • 裁员致谷歌中国籍程序员身亡,技术变革下裁员对程序员的影响有多大
  • MybatisPlus的主键ID生成策略和公共字段自动填充的使用及注意事项
  • 【GitHub项目推荐--微软开源的可视化工具】【转载】
  • Python基础之文件操作(I/O)
  • k8s--helm
  • 算法训练营第五十六天|583. 两个字符串的删除操作 72. 编辑距离
  • 使用WAF防御网络上的隐蔽威胁之目录穿越
  • Linux:vim的相关知识
  • Qt 国产嵌入式操作系统实现文字转语音功能(ekho库)
  • Redis常见类型及常用命令