Java学习笔记25——集合进阶3

news/2024/11/16 6:56:19/

Map集合概述和使用

  • Map集合概述和特点
    • Map集合概述
    • Map集合的基本功能
    • Map集合的获取功能
  • Map集合的遍历方式
    • 方式1
    • 方式2

Map集合概述和特点

Map集合概述

  1. Interface Map<K,V> K:键的类型,V:值的类型
  2. 将键映射到值得对象;不能包含重复的键,每个键可以最多映射到一个值
Map<String,String> map=new HashMap<String,String>();
map.put("01","R");
map.put("02","Z");
map.put("02","R");//同一个键不同值添加,则进行修改

Map集合的基本功能

方法名说明
V put(K key,V value)添加元素
V remove(Object key)根据键删除值对元素
void clear()移除所有键值对元素
boolean containsKey(Object key)判断集合是否包含指定的键
boolean containsValue(Object value)判断集合是否包含指定的值
boolean isEmpty()判断集合是否为空
int size()集合的长度,集合中键值对的个数

Map集合的获取功能

方法名说明
V get(Object key)根据键获取值
Set keySet()获取所有键的集合
Collection values()获取所有值的集合
Set<Map.Entry<K,V>> entrySet()获取所有键值对对象的集合

Map集合的遍历方式

方式1

  1. 获取所有键的集合keySet()
  2. 遍历键的集合,用增强for的方法
  3. 根据键去找值,get(Object key)
Map<String,String> map=new HashMap<String,String>();
map.put("01","R");
map.put("02","Z");
map.put("02","R");//同一个键不同值添加,则进行修改
Set<String> keySet=map.keySet();
for(String key :keySet){String value=map.get(key);System.out.println(key+","+value);
}

方式2

  1. 获取所有键值对对象的集合Set<Map.Entry<K,V>> entrySet()
  2. 遍历键值对对象集合,获得每一个键值对对象,增强for实现
  3. 用**getKey()**获得键,**getValue()**获得值
Map<String,String> map=new HashMap<String,String>();
map.put("01","R");
map.put("02","Z");
map.put("02","R");//同一个键不同值添加,则进行修改
Set<Map.EntrySet<String,String>> entrySet=map.entrySet(); 
for(Map.Entry <String,String> me:entrySet){String key=me.getKey();String value=me.getValue();System.out.println(key+","+value);
}

TreeMap是有序的map


http://www.ppmy.cn/news/977742.html

相关文章

你的服务器还安全吗?用户数据是否面临泄露风险?

一系列严重的网络安全事件引起了广泛关注&#xff0c;多家知名公司的服务器遭到黑客挟持&#xff0c;用户的个人数据和敏感信息面临泄露的风险。这些事件揭示了网络安全的脆弱性和黑客攻击的威胁性&#xff0c;提醒着企业和个人加强对网络安全的重视。 一、入侵案例1.1 蔚来数据…

基础算法-数组模拟队列

队列&#xff1a;先进先出 什么叫做队列&#xff1a; 就是一个特殊的数组。这个数组&#xff0c;最前面叫队头&#xff0c;最后面叫队尾。只允许在最后面添加元素&#xff0c;只允许在最前面删除元素。 解题思路&#xff1a; 用一个数组 q 保存数据。 用 hh 代表队头&…

macbook 软件iMovie for Mac(专业视频剪辑工具)中文版

iMovie mac中文版是一款针对Mac平台量身定做的视频编辑工具&#xff0c;软件凭借流线型设计和直观的编辑功能&#xff0c;可以让您感受前所未有的方式制作好莱坞风格的预告片和精美电影&#xff0c;并且还可以浏览视频资料库&#xff0c;快速共享挚爱瞬间&#xff0c;创建精美的…

使用预训练的2D扩散模型改进3D成像

扩散模型已经成为一种新的生成高质量样本的生成模型&#xff0c;也被作为有效的逆问题求解器。然而&#xff0c;由于生成过程仍然处于相同的高维&#xff08;即与数据维相同&#xff09;空间中&#xff0c;极高的内存和计算成本导致模型尚未扩展到3D逆问题。在本文中&#xff0…

王道考研数据结构--4.3链队列

目录 前言 1.链队列的定义 2.链队列的结构 3.链队列的操作 3.1定义链队列 3.2初始化 3.3入队 3.4出队 3.5遍历求表长 3.6清空&#xff0c;销毁 4.完整代码 前言 日期&#xff1a;2023.7.25 书籍&#xff1a;2024年数据结构考研复习指导&#xff08;王道考研系列&…

vue3相对路径图片编译后无法显示

<img src"../assets/image/ai_content_12x.png" /> 是这么写的&#xff0c;图片用的相对路径&#xff0c;在本地不编译的话是没有问题正常。 但是编译后你就会发现在域名后一旦有路径&#xff0c;整个vue的 img js css 的加载路径都会报错。 需要在vue.config.…

idea springBoot 部署多个项目打开Run Dashboard 窗口

在部署springcloud 项目的时候 本地调试&#xff0c;有可能需要全部启动所有服务&#xff0c;单个部署比较麻烦&#xff0c;通过Run DashBoard 窗口可以完美实现 1.先打开项目的文件地址找到workspace.xml文件&#xff0c;在项目下的.idea\workspace.xml 2. ctrlf 找到RunDash…

Java 贪心算法经典问题解决

文章目录 分金条题目思路代码实现测试用例以及结果输出 花费资金做项目最大收益题目思路代码实现测试用例以及结果输出 预定会议室题目思路代码实现测试用例以及结果输出 取中位数题目思路代码实现测试用例以及结果输出 最低字典序题目思路代码实现测试用例以及结果输出 结语 分…