当前位置:首页 » 《随便一记》 » 正文

【Java】Map集合概述_执久呀的博客

26 人参与  2022年06月01日 09:10  分类 : 《随便一记》  评论

点击全文阅读


目录

一、前言

二、Map介绍

三、Map的基本功能

Map功能演示:

四、 Map集合的获取功能

Map遍历演示:


一、前言

map集合是我们常使用的集合,了解和使用map集合是必要的

二、Map介绍

  基本形式:   public interface  Map<K,V>

Map是一个接口,我们不能直接创建对象,可以通过多态的形式创建对象,Map中有两个

参数,一个是K表示键,一个是V表示值,且一个键有且对应一个值,Map中不能包含重复的

键,若是有重复的键添加,则会以最后一次的键为准,而其他的键会被覆盖。集合都在

java.util包下,所以需要导包。

具体实现常用的一般有两种,一是HashMap,另一个是TreeMap

import java.util.HashMap;
import java.util.Map;

public class MapTest {
    public static void main(String[] args) {
        Map<String,String> map=new HashMap<>();
        map.put("2001", "张三");
        map.put("2002", "张三");
        map.put("2003", "李四");
      map.put("2003", "王五");//键重复,会覆盖上一个,留下最新的
        System.out.println(map);//{2003=王五, 2002=张三, 2001=张三}
    }
}

由上可知,map中的键是不能重复的,而值是可以重复的可以直接通过输出对象来得到

集合的内容,说明此集合内重写了toString方法。

三、Map的基本功能

 这些功能是常见的,掌握这些即可

Map功能演示:

import java.util.HashMap;
 import java.util.Map;

public class MapTest {
    public static void main(String[] args) {
        //创建Map集合对象
        Map<String,String> map=new HashMap<>();
        //增加元素
        map.put("2001", "张三");
        map.put("2002", "李四");
        map.put("2003", "王五");
        System.out.println(map);//{2003=王五, 2002=李四, 2001=张三}
        //根据键删除元素
        //  map.remove("2001");
        //System.out.println(map);//{2003=王五, 2002=李四}
        //判断集合中是否包含指定的键返回boolean类型
        System.out.println(map.containsKey("2001"));//true
        System.out.println(map.containsKey("2004"));//false
        //判断集合中是否包含指定的值返回boolean类型
        System.out.println(map.containsValue("张三"));//true
        System.out.println(map.containsValue("赵六"));//false
        //判断集合是否为空返回boolean类型
        System.out.println(map.isEmpty());//false
        //得到集合的长度
        System.out.println(map.size());//3
        //清除所有键值对
        map.clear();
        System.out.println(map.isEmpty());//true,为空了

    }
}

四、 Map集合的获取功能

 此方法多是用在遍历集合时,前三种比较常用也比较好记。

Map遍历演示:

import java.util.HashMap;
import java.util.Map;
import java.util.Set;

public class Maptest2 {
    public static void main(String[] args) {
        Map<String, String> map = new HashMap<>();
        map.put("2001", "张三");
        map.put("2002", "李四");
        map.put("2003", "王五");
       //遍历集合
        //方式1:
        // 由键找值,创建键的集合
        Set<String>  keySet=map.keySet();
        //遍历键的集合,得到每一个键
        for (String key:keySet){
            //由键找值
            String value=map.get(key);
            //输出键和值
            System.out.print(key+" "+value+", ");
        }
        System.out.println("\n------------");

        //方式2:
        //获取所有键值对的集合
        Set<Map.Entry<String,String>>  entrySet  =map.entrySet();
        //遍历键值对集合
        for (Map.Entry<String,String> me:entrySet){
            //分别得到键和值
            String key=me.getKey();
            String value=me.getValue();
            System.out.print(key+" "+value+", ");
        }
    }
}

如图:

 

 


点击全文阅读


本文链接:http://m.zhangshiyu.com/post/41134.html

集合  遍历  王五  
<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 她的记忆停留在了最爱初恋的那年许欣柔楚临川完本_她的记忆停留在了最爱初恋的那年(许欣柔楚临川)
  • 全书浏览假千金的实习生男友霸占我办公室,我反手让他们倾家荡产(顾家明)_假千金的实习生男友霸占我办公室,我反手让他们倾家荡产(顾家明)全书结局
  • 童养夫让我给他的新欢出修复费(林嘉芝林思雅)_童养夫让我给他的新欢出修复费林嘉芝林思雅
  • 全文资助生女婿让我给他白月光付三千万月子中心钱(宋清玉宋雅)列表_全文资助生女婿让我给他白月光付三千万月子中心钱
  • 碎在时光里的谎言喻景宴秦明月完本_碎在时光里的谎言(喻景宴秦明月)
  • 旧爱剜心吻成灰席鄢之岑秋全书免费旧爱剜心吻成灰席鄢之岑秋全书免费
  • 结婚六年丈夫不碰我谁知儿子亲爹是寡头(纪清言傅司砚),结婚六年丈夫不碰我谁知儿子亲爹是寡头
  • 老公想换掉我的男胎,我笑他自不量力(宋薇于继业)_老公想换掉我的男胎,我笑他自不量力宋薇于继业
  • 给太子下了噬心蛊后,皇后找上门(小夭赵劼)全书浏览_给太子下了噬心蛊后,皇后找上门全书浏览
  • 豪门绝嗣!带球跑的夫人回来了!(谢长宴慕清杳)_豪门绝嗣!带球跑的夫人回来了!谢长宴慕清杳
  • 完美身材(李朵林之晴)_完美身材李朵林之晴
  • 离婚后,我和快穿系统绑定(白意秋陈荣周立慧)_离婚后,我和快穿系统绑定(白意秋陈荣周立慧)

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1