• Java集合(类)框架(三)


    1. Map集合

    相较于List和Set集合而言,Map集合所储存的数据为双列行,数据是以key和value为一个单位进行存储的,如在建立一个学生Map的时候,其中的数据应为 学号-姓名(key-value)等双列行类型 。

    其中key的值不可以重复,value的值可以重复(其中道理显而易见:一个班级中可能有重名的同学,但是不会有两个同学的学号是重复的),此外,不一定要将学号和姓名作为储存数据,其他

    的数据也可,其中具体哪个数据为key哪个数据为value由自己根据数据是否能重复来决定。

    1.1 hashMap和treeMap的区别

    hashMap为无序排列,在打印输出时也是乱序的,不会根据元素添加的先后顺序打印;

    treeMap为有序排列,无论输入顺序是什么,在打印输出时统一按照key的值进行顺序输出。

    1.2 Map集合的方法

    声明

    与Collection下的两个集合相似

    Map<String, String> map01 = new hashMap<>();
    Map<String, String> map02 = new treeMap<>();//多态

    其中数据类型由使用者决定,并不要求一定都是String类型

    添加元素时如果与之前的key值相同,那么新添加的元素会将原来的元素覆盖

    与Collection下的两个集合不同,Map添加元素的方法为put(key, val);

    key与val的数据类型在声明时确定

    remove();

    由于新元素会对旧元素进行覆盖,如果要修改key下对应的value值,直接添加一个相同key值不同value值的元素进行覆盖即可

    get(key);

    getClass();

    遍历

    除根据for循环遍历外还可直接print(hashMap);进行全部元素的打印输出

    1.3 备注

    在添加元素时虽然新元素会完成对旧元素的覆盖,但是新元素的返回值依旧是其覆盖元素的value值,如

    haspMap.put(1, "hello");
    String str = hashMap.put(1, "world");
    System.out.print(str); //print: hello
    System.out.print(hashMap.get(1)); //print: world

    根据以上代码进行区分

  • 相关阅读:
    网易数帆实时数据湖 Arctic 的探索和实践
    私有化场景下大规模云原生应用的交付实践
    Apache Kyuubi 在 T3 出行的深度实践
    Win7 32位原版镜像无法安装VMware Tools
    VB.NET代码转C#的方法
    ArcGIS Pro导入OSGB倾斜摄影数据
    基于倾斜摄影测量的三维建模实验
    解决QTTabBar标签不能置顶的问题
    GIS中图斑椭球面积的计算
    ISaveAs导出栅格显示异常
  • 原文地址:https://www.cnblogs.com/YuanShiRenY/p/mapSetLearn.html
Copyright © 2020-2023  润新知