第十三节:第二部分:集合框架:Map系列集合:概述、常用方法

认识Map集合


Map集合在什么业务场景下使用

Map集合体系

Map集合的常用方法

代码:

代码一:掌握Map集合的特点

java 复制代码
package com.itheima.day24_Map;

import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.TreeMap;

//目标:掌握Map集合的特点,
public class MapTest {
    public static void main(String[] args) {
        //Map<String,Integer> map = new HashMap<>();//一行经典代码。按照键 无序,不重复,无索引。
        Map<String,Integer> map = new LinkedHashMap<>();有序,不重复,无索引。
        map.put("手机",100);
        map.put("手机",150);//后面重复的数据会覆盖前面的数据(键)
        map.put("手表",220);
        map.put("JAVA书",150);
        map.put(null,null);
        System.out.println(map);

        Map<Integer,String> map1 = new TreeMap<>();//可排序,不重复,无索引
        map1.put(10,"JAVA");
        map1.put(10,"MYSQL");//后面重复的数据会覆盖前面的数据(键)
        map1.put(24,"SQL");
        map1.put(22,"C++");
        System.out.println(map1);
    }
}

代码二:Map集合的常用方法

java 复制代码
package com.itheima.day24_Map;

import java.util.*;

public class MapTest2 {
    public static void main(String[] args) {
        Map<String,Integer> map = new LinkedHashMap<>();有序,不重复,无索引。
        map.put("手机",100);
        map.put("手机",150);//后面重复的数据会覆盖前面的数据(键)
        map.put("手表",220);
        map.put("JAVA书",220);
        map.put(null,null);
        System.out.println(map);
        //map={手机=150, 手表=220, JAVA书=150, null=null}
        // 2.public int size():获取集合的大小
        System.out.println(map.size());
        // 3、public void clear():清空集合
//        map.clear();
//        System.out.println(map);
        // 4.public boolean isEmpty():判断集合是否为空为空返回true反之!
        System.out.println(map.isEmpty());
        // 5.public V get(0bject key):根据键获取对应值
        System.out.println(map.get("手机"));
        System.out.println(map.get("手表"));
        System.out.println(map.get("张三"));//null
        // 6.publicV remove(Object key):根据键删除整个元素(删除键会返回键的值):
        System.out.println(map.remove("手机"));
        System.out.println(map);
        // 7.public boolean containsKey(0bject key):判断是否包含某个键 ,包含返回true,反之返回false
        System.out.println(map.containsKey("手机"));//false
        System.out.println(map.containsKey("手表"));//true
        // 8.public boolean containsValue(object value): 判断是否包含某个值。
        System.out.println(map.containsValue(220));//true
        // 9.public Set<K> keyset():获取Map集合的全部键。
        Set<String> keys = map.keySet();
        System.out.println(keys);//[手表, JAVA书, null]
        // 10.public Collection<V>values();获取Map集合的全部值。
        Collection<Integer> values = map.values();
        System.out.println(values);//[220, 220, null]
        // 11.把其他Map集合的数据倒入到自己集合中来。(拓展)
        Map<String,Integer> map1 = new HashMap<>();
        map1.put("java1",10);
        map1.put("java2",20);
        Map<String,Integer> map2 = new HashMap<>();
        map2.put("java2",222);
        map2.put("java3",30);
        map1.putAll(map2);//putAll:把map2集合中的元素全部倒入一份到map1集合中去。
        System.out.println(map1);//{java3=30, java2=222, java1=10}
        System.out.println(map2);//{java3=30, java2=222}

    }
}
相关推荐
爱丽_30 分钟前
深入理解 Java Socket 编程与线程池:从阻塞 I/O 到高并发处理
java·开发语言
济南壹软网络科技有限公司33 分钟前
云脉IM的高性能消息路由与离线推送机制摘要:消息的“零丢失、低延迟”之道
java·即时通讯源码·开源im·企业im
Seven9739 分钟前
剑指offer-46、孩⼦们的游戏(圆圈中最后剩下的数)
java
serendipity_hky1 小时前
互联网大厂Java面试故事:核心技术栈与场景化业务问题实战解析
java·spring boot·redis·elasticsearch·微服务·消息队列·内容社区
我真不会起名字啊1 小时前
C、C++中的sprintf和stringstream的使用
java·c语言·c++
十点摆码1 小时前
Spring Boot2 使用 Flyway 管理数据库版本
java·flyway·数据库脚本·springboo2·数据库脚本自动管理
毕设源码-钟学长1 小时前
【开题答辩全过程】以 基于Javaweb的电动汽车充电桩管理系统为例,包含答辩的问题和答案
java·spring boot
多敲代码防脱发1 小时前
为何引入Spring-cloud以及远程调用(RestTemplate)
java·开发语言
毕设源码-邱学长1 小时前
【开题答辩全过程】以 基于JavaWeb的家庭理财管理系统的设计与实现为例,包含答辩的问题和答案
java
sailing-data2 小时前
【SE】接口标准化
java·开发语言