Android开发(Java部分)——Map基本使用

Map接口 映射 没有顺序
   -|HashMap 管理键值对
   -|ConcurrentMap 线程安全
   -|LinkedHashMap

key:键
value:值


MyClass.java

class Person{
    int age;
    int score;
    String name;

    public Person (int age, int score, String name) {
        this.age = age;
        this.score = score;
        this.name = name;
    }

    @Override
    public String toString() {
        return "Person" +
            "age=" + age +;
    }
}


public class MyClass {
    public static void main(String[] agrs) {
        Map<String, Person> map = new HashMap<>();

        //添加一个键值对
        map.put(k: "jack", new Person(age: 30, score: 98, name: "jack"));
        map.put(k: "merry", new Person(age: 32, score: 62, name: "merry"));

        //获取键值对的个数
        System.out.println(map.size());

        //是否包含某一个key
        System.out.println(map.containsKey(o: "jack232"));//false
        
        //判断是否包含某个value
        System.out.println(map.containsValue(person));

        //获取某个key对应的value
        Person p = map.get("jack");
        System.out.println("jack:"+p);//jack:person{age=30, score=98, name='jack'}
        
        //删除某个键值对
        map.remove(o: "jack");

        //替换某个键值对
        map.replace(k: "jack", new Person(age: 32, score: 32, name: "张三"));
        System.out.println(map);//jack=Person{age=32, score=32, name='张三'}

        //清空
        map.claer();
        
        //map遍历
        Set<Map.Entry<String, Person>> entries = map.entrySet();
        for (Map.Entry<String, Person> entry: entries){
            System.out.println("key:"+entry.getKey()+" value:"+entry.getValue());
        }
        
    }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本系列出于AWeiLoveAndroid的分享,在此感谢,再结合自身经验查漏补缺,完善答案。以成系统。 Java基...
    济公大将阅读 5,405评论 1 6
  • 九种基本数据类型的大小,以及他们的封装类。(1)九种基本数据类型和封装类 (2)自动装箱和自动拆箱 什么是自动装箱...
    关玮琳linSir阅读 5,938评论 0 47
  • java笔记第一天 == 和 equals ==比较的比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量...
    jmychou阅读 5,400评论 0 3
  • 传送门:Java(Android)数据结构汇总 -- 总纲 简介 这篇主要来整理下基于Map接口实现的数据结构类。...
    sens_bingo阅读 6,172评论 0 54
  • Java SE 基础: 封装、继承、多态 封装: 概念:就是把对象的属性和操作(或服务)结合为一个独立的整体,并尽...
    Jayden_Cao阅读 6,414评论 0 8