Map集合常用的三种遍历方式

article/2025/10/2 9:19:21
  1. Map集合使用的是Key - Value的形式存储元素,也就是键值对的形式。
  2. Map集合内部的实现分别是HashMapTreeMap,也就是哈希表二叉树这两种数据结构。
  3. List集合和Set集合都是继承自Collection类,而Map集合就是自己的父类。前者可以直接通过Iterator迭代器进行迭代,而后者就必须要转换成Set集合再使用Iterator迭代器进行内部元素的迭代

Map集合有效的遍历出内部的元素,就必须转换成Set集合再使用Iterator迭代器进行迭代。

方式一

使用Map接口自带的内部接口 Entry<K , V> 进行过度方式的遍历
public static interface Map.Entry<K,​V>
Map集合内部元素的映射条目(键值对)。 Map.entrySet方法返回地图的集合视图,其元素属于此类。

 private static void mapItetator(){Map<String,Integer> mapCollect = new HashMap<>();mapCollect.put("zhang",11);mapCollect.put("san",1212);// entrySet()将Map集合转换成Set集合,然后使用Set集合的迭代器进行元素的迭代。Iterator<Map.Entry<String,Integer>> iterator = mapCollect.entrySet().iterator();//迭代器的使用while(iterator.hasNext()){//取出内部的元素Map.Entry<String,Integer> item = iterator.next();System.out.println(item.getKey() + "--->" + item.getValue());}List<String> result = new ArrayList<>();result.toArray();}

结果

san—>1212
zhang—>11

方式二

Map集合.keySet() 将Key映射成Set集合,Map集合.values() 将Value映射成Collection集合

private static void mapItetator(){Map<String,Integer> mapCollect = new HashMap<>();mapCollect.put("zhang",11);mapCollect.put("san",1212);// 将Key转换成Set集合进行遍历输出for(String key : mapCollect.keySet()) System.out.println(key);// 将Value转换成Collection集合进行遍历输出for(Integer value : mapCollect.values()) System.out.println(value);}

结果

san
zhang
1212
11

方式三

通过指定的Key,再利用Map集合的get () 方法得到指定的Value

   private static void mapItetator(){Map<String,Integer> mapCollect = new HashMap<>();mapCollect.put("zhang",11);mapCollect.put("san",1212);// 将Key传换成Set集合,遍历并得到Key映射的Valuefor(String key : mapCollect.keySet()){System.out.println(key + "--->" + mapCollect.get(key));}

结果

san—>1212
zhang—>11

总结

再上述三种方式中,采用的Map实现类是Hash Map,哈希表也称为散列表,存储数据是由一个Hash函数进行定位的,所以元素输出的顺序就会导致和存储时的位置不一样,如果想要一样,就可以使用LinkedHashMap实现类去实现Map接口。
遍历Map集合最常用的方式就是方式一,将Map集合转换成Set集合,然后通过Iterator进行遍历输出。

在这里插入图片描述

今天是大年初一,大家新年快乐,2021年已经成为了过去,这一年的努力在我们的眼里都看得十分清晰,是的,很累。但是我们无法避免社会的残酷,我们需要拼命地去追赶哪些被称为“天才”的奋斗者。2022年又是一个新的开始,所以请让我们继续奋斗、继续加油。


http://chatgpt.dhexx.cn/article/RBXLlDWD.shtml

相关文章

Map集合遍历方式

Map集合遍历方式一&#xff1a;键找值 先获取Map集合的全部键的Set集合 //Set keymap.keySet();遍历键的Set集合&#xff0c;然后通过键提取对应值map.getValue() Set<String> keysmaps.keySet();for(String key1:keys){int valu1emaps.get(key1);System.out.println(ke…

MAP集合的遍历方式

简单场景&#xff1a;map集合存放为数字星期 如图&#xff1a; 代码&#xff1a; Map<Integer, String> map new HashMap<>(); map.put(1, "星期一"); map.put(2, "星期二"); map.put(3, "星期三"); map.put(4, "星期四&quo…

Map集合遍历的四种方式

1.通过Map.keySet获取key的Set集合&#xff0c;之后在通过key进行遍历 2.通过Map.values获取所有value&#xff0c;之后再进行遍历 3.通过Map.entrySet获取Set集合&#xff0c;之后通过iterator进行遍历 4.直接通过foreach对Map.entrySet获取的Set集合进遍历 案例&#…

lstm结构图_LSTM模型结构的可视化

目录: 1、传统的BP网络和CNN网络 2、LSTM网络 3、LSTM的输入结构 4、pytorch中的LSTM 4.1 pytorch中定义的LSTM模型 4.2 喂给LSTM的数据格式 4.3 LSTM的output格式 5、LSTM和其他网络组合 最近在学习LSTM应用在时间序列的预测上,但是遇到一个很大的问题就是LSTM在传统BP网络上…

LSTM模型详解

&#xff08;一&#xff09;LSTM模型理解 1.长短期记忆模型&#xff08;long-short term memory&#xff09;是一种特殊的RNN模型&#xff0c;是为了解决RNN模型梯度弥散的问题而提出的&#xff1b;在传统的RNN中&#xff0c;训练算法使用的是BPTT&#xff0c;当时间比较长时&…

LSTM模型、双向LSTM模型以及模型输入输出的理解

循环神经网路&#xff08;RNN&#xff09;在工作时一个重要的优点在于&#xff0c;其能够在输入和输出序列之间的映射过程中利用上下文相关信息。然而不幸的是&#xff0c;标准的循环神经网络&#xff08;RNN&#xff09;能够存取的上下文信息范围很有限。这个问题就使得隐含层…

基于LSTM模型实现新闻分类

1、简述LSTM模型 LSTM是长短期记忆神经网络&#xff0c;根据论文检索数据大部分应用于分类、机器翻译、情感识别等场景&#xff0c;在文本中&#xff0c;主要使用tensorflow及keras&#xff0c;搭建LSTM模型实现新闻分类案例。&#xff08;只讨论和实现其模型的应用案例&#…

Pytorch实现的LSTM模型结构

LSTM模型结构 1、LSTM模型结构2、LSTM网络3、LSTM的输入结构4、Pytorch中的LSTM4.1、pytorch中定义的LSTM模型4.2、喂给LSTM的数据格式4.3、LSTM的output格式4.4 LSTM笔记 5、LSTM和其他网络组合 1、LSTM模型结构 BP网络和CNN网络没有时间维&#xff0c;和传统的机器学习算法理…

【RNN架构解析】LSTM 模型

LSTM 模型 前言1. LSTM 内部结构图2. Bi-LSTM 介绍3. LSTM 代码实现4. LSTM 优缺点前言 了解LSTM内部结构及计算公式.掌握Pytorch中LSTM工具的使用.了解LSTM的优势与缺点.LSTM(Long Short-Term Memory)也称长短时记忆结构, 它是传统RNN的变体, 与经典RNN相比能够有效捕捉长序…

Pytorch LSTM模型 参数详解

本文主要依据 Pytorch 中LSTM官方文档&#xff0c;对其中的模型参数、输入、输出进行详细解释。 目录 基本原理 模型参数 Parameters 输入Inputs: input, (h_0, c_0) 输出Outputs: output, (h_n, c_n) 变量Variables 备注 基本原理 首先我们看下面这个LSTM图&#xff0c; 对…

猿创征文丨深度学习基于双向LSTM模型完成文本分类任务

大家好&#xff0c;我是猿童学&#xff0c;本期猿创征文的第三期&#xff0c;也是最后一期&#xff0c;给大家带来神经网络中的循环神经网络案例&#xff0c;基于双向LSTM模型完成文本分类任务&#xff0c;数据集来自kaggle&#xff0c;对电影评论进行文本分类。 电影评论可以蕴…

LSTM模型参数解释

其中&#xff0c;input_size(输入张量x的维度)6&#xff0c;hidden_size(隐藏层的维度&#xff0c; 隐藏层的神经元个数)6&#xff0c;num_layer(隐藏层层数)2 train loss与test loss结果分析&#xff1a; train loss 不断下降&#xff0c;test loss不断下降&#xff0c;说明网…

【用pytorch进行LSTM模型的学习】

用pytorch进行LSTM模型的学习 LSTM模型用pytorch&#xff0c;采用LSTM对seaborn数据集做预测基本步骤数据的观察特殊数据处理数据归一化模型的构建与选择模型的保存 飞机航班流量预测示例 LSTM模型 LSTM模型长下面这样&#xff0c;主要用在时间序列的预测&#xff0c;具有比RN…

LSTM模型预测新冠

LSTM是RNN的改进型&#xff0c;传统RNN模型会随着时间区间的增长&#xff0c;对早期的因素的权重越来越低&#xff0c;有可能会损失重要数据。而LSTM模型通过遗忘门、输入门、输出门三个逻辑&#xff0c;来筛选和保留数据。 原理详解可以参考如何从RNN起步&#xff0c;一步一步…

LSTM模型结构讲解

人类并不是每时每刻都从一片空白的大脑开始他们的思考。在你阅读这篇文章时候&#xff0c;你都是基于自己已经拥有的对先前所见词的理解来推断当前词的真实含义。我们不会将所有的东西都全部丢弃&#xff0c;然后用空白的大脑进行思考。我们的思想拥有持久性。 传统的神经网络…

LSTM 模型实践一

简单介绍 原因&#xff1a;普通的RNN&#xff08;Recurrent Neural Network&#xff09;对于长期依赖问题效果比较差&#xff0c;当序列本身比较长时&#xff0c;神经网络模型的训练是采用backward进行&#xff0c;在梯度链式法则中容易出现梯度消失和梯度爆炸的问题。 解决&…

理解LSTM模型

写在前面&#xff1a;这是翻译自colah的一篇博客&#xff0c;原文关于LSTM神经网络模型的理解写的非常直观、简单易懂&#xff0c;所以翻译过来帮助大家学习理解LSTM模型。 当然我不是按照原文一字不落的翻译&#xff0c;而是摘出其中对模型理解最有帮助的部分&#xff0c;然后…

LSTM模型预测时间序列(快速上手)

写在前面 LSTM模型的一个常见用途是对长时间序列数据进行学习预测&#xff0c;例如得到了某商品前一年的日销量数据&#xff0c;我们可以用LSTM模型来预测未来一段时间内该商品的销量。但对于不熟悉神经网络或者对没有了解过RNN模型的人来说&#xff0c;想要看懂LSTM模型的原理…

基于优化LSTM 模型的股票预测

LSTM自诞生以来&#xff0c;便以其在处理时间序列方面的优越性能在预测回归&#xff0c;语音翻译等领域广受青睐。今天&#xff0c;主要研究的是通过对LSTM模型的优化来实现股票预测。其实&#xff0c;关于股票预测&#xff0c;LSTM模型已经表现的相当成熟&#xff0c;然而&…

【机器学习】LSTM模型原理

文章目录 1. 序言2. RNN的基本概念与网络结构2.1 概念2.2 结构2.3 要素 3. LSTM的基本概念与网络结构3.1 概念3.2 结构3.3 要素 4. LSTM网络结构的说明5. 补充 1. 序言 临渊羡鱼不如归而结网 学习的目的是为了应用 2. RNN的基本概念与网络结构 LSTM是在RNN的基础上演进而来…