第十三节:第二部分:集合框架: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}

    }
}
相关推荐
是一个Bug1 小时前
Java基础50道经典面试题(四)
java·windows·python
Slow菜鸟1 小时前
Java基础架构设计(三)| 通用响应与异常处理(分布式应用通用方案)
java·开发语言
我是Superman丶1 小时前
《Spring WebFlux 实战:基于 SSE 实现多类型事件流(支持聊天消息、元数据与控制指令混合传输)》
java
廋到被风吹走1 小时前
【Spring】常用注解分类整理
java·后端·spring
是一个Bug2 小时前
Java基础20道经典面试题(二)
java·开发语言
Z_Easen2 小时前
Spring 之元编程
java·开发语言
leoufung2 小时前
LeetCode 373. Find K Pairs with Smallest Sums:从暴力到堆优化的完整思路与踩坑
java·算法·leetcode
阿蒙Amon2 小时前
C#每日面试题-委托和事件的区别
java·开发语言·c#
宋情写2 小时前
java-IDEA
java·ide·intellij-idea
最贪吃的虎2 小时前
Git: rebase vs merge
java·运维·git·后端·mysql