Java之迭代器的使用

Java之迭代器的使用

    • 摘要
    • 基础知识
    • List迭代器
    • Map迭代器

摘要

本博客主要讲解容器的迭代器的使用,包括List、Set和Map等容器

基础知识

这是类的继承关系图
在这里插入图片描述
迭代器的原理(一开始迭代器并不指向任何有效元素):
在这里插入图片描述

List迭代器

public class TestIterator {public static void main(String[] args) {testIteratorList();}public static void testIteratorList(){List<String> list = new ArrayList<>();list.add("aa");list.add("bb");list.add("cc");//底下就是迭代器遍历打印list中的元素for( Iterator<String> iter = list.iterator(); iter.hasNext();){String temp = iter.next();System.out.println(temp);}}
}

Map迭代器

public class TestIterator {public static void main(String[] args) {testIteratorMap();}public static void testIteratorMap(){Map<Integer, String> map1 = new TreeMap<>();map1.put(100,"aa");map1.put(200, "bb");//Map每个元素都是一个节点,节点的类型为Map.Entry<Integer, String>,这里把map1转换为集合Set<Map.Entry<Integer, String>> set = map1.entrySet();//处理集合的方法for( Iterator<Map.Entry<Integer, String>> iter = set.iterator(); iter.hasNext();){Map.Entry<Integer, String> temp = iter.next();//获取节点的key和valueSystem.out.println(temp.getKey() + ":" + temp.getValue());}}
}

其他的方法:

public class TestIterator {public static void main(String[] args) {testIteratorMap();}public static void testIteratorMap(){Map<Integer, String> map1 = new TreeMap<>();map1.put(100,"aa");map1.put(200, "bb");//把map1的键全部取出来Set<Integer> set = map1.keySet();for( Iterator<Integer> iter = set.iterator(); iter.hasNext();){Integer temp = iter.next();System.out.println(map1.get(temp));}}
}

参考:迭代器

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/406809.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

World of Warcraft [CLASSIC] the Eye of Eternity [EOE] P1-P2

World of Warcraft [CLASSIC] the Eye of Eternity [EOE] 永恒之眼&#xff08;蓝龙&#xff09; 第一阶段 第二阶段 第三阶段 载具1-6技能介绍 World of Warcraft [CLASSIC] the Eye of Eternity [EOE]_永恒之眼 eoe-CSDN博客 永恒之眼怎么出副本呢&#xff0c;战斗结束&am…

【Java】/* 链式队列 和 循环队列 - 底层实现 */

一、链式队列 1. 使用双向链表实现队列&#xff0c;可以采用尾入&#xff0c;头出 也可以采用 头入、尾出 (LinkedList采用尾入、头出) 2. 下面代码实现的是尾入、头出&#xff1a; package bageight;/*** Created with IntelliJ IDEA.* Description:* User: tangyuxiu* Date: …

windows安装android studio

下载 https://developer.android.google.cn/studio?hlzh-cn 安装 打开cmd输入如下命令 android-studio-2024.1.1.12-windows.exe /NCRC 注意 运行命令后可能还报错&#xff0c;但是会出现弹窗 如果还是报错可以选择zip 运行 不设置代理 等待下载即可&#xff0c;…

Linux云计算 |【第二阶段】SECURITY-DAY3

主要内容&#xff1a; Prometheus监控服务器、Prometheus被监控端、Grafana监控可视化 补充&#xff1a;Zabbix监控软件不自带LNMP和DB数据库&#xff0c;需要自行手动安装配置&#xff1b;Prometheus监控软件自带WEB页面和DB数据库&#xff1b;Prometheus数据库为时序数据库&…

Android 14适配

最近刚刚做了Android 14的适配&#xff08;即targetSdkVersion 升级到 34 &#xff09;&#xff0c;通过此博客整理下相关注意点。 前台服务类型 当targetSdkVersion > 34 &#xff0c;应用内的前台服务&#xff08;Foreground Service&#xff09;需要指定至少一种前台服务…

k8s - Secret实践练习

参考文档&#xff1a;https://kubernetes.io/zh-cn/docs/concepts/configuration/secret/ 这个和ConfigMap很相似&#xff0c;这里选两个做下测试&#xff0c;就不过多赘述了 简介 Secret 类似于 ConfigMap 但专门用于保存机密数据。 Secret 是一种包含少量敏感信息例如密码…

qt creator自动运行单元测试

qt creator自动运行单元测试 工具-选项-Testing-General&#xff0c;找到Automatically run&#xff0c;选项卡选择All。

[C语言]-基础知识点梳理-编译、链接、预处理

前言 各位师傅大家好&#xff0c;我是qmx_07,今天来给大家讲解以下程序运行会经历哪些事情 翻译环境和运⾏环境 在ANSIC的任何⼀种实现中&#xff0c;存在两个不同的环境 第1种是翻译环境&#xff0c;在这个环境中源代码被转换为可执⾏的机器指令&#xff08;⼆进制指令&a…

Linux下opencv报错 undefined reference to cv::imread cv::Mat

如果你是和libtorch一起使用&#xff0c;那么请你继续&#xff0c;否则该篇文章不适合你。 正文 在https://pytorch.org/下 下载的时候要选择Cxx11 ABI版 随后正常配置就可以了

Langchain-Chatchat

模型能力定制 微调 智能设备 微调 响应有要求 微调 动态数据 RAG 幻觉 RAG 可解释性 RAG 成本 RAG 依赖生成能力 微调 微调需要几万、几十万条好的数据&#xff0c;否者白调&#xff0c;所以是否需要微调&#xff0c;需要视情况而定。 RAG的落地&#xff0c;可以使用 https:/…

wangeditor编辑器自定义按钮和节点,上传word转换html,文本替换

vue3ts 需求&#xff1a;在编辑器插入图片和视频时下方会有一个输入框填写描述&#xff0c;上传word功能 wangeditor文档wangEditor开源 Web 富文本编辑器&#xff0c;开箱即用&#xff0c;配置简单https://www.wangeditor.com/ 安装&#xff1a;npm install wangeditor/edit…

Datawhale X 李宏毅苹果书 AI夏令营-深度学习入门班-task1

机器学习就是去拟合一种函数&#xff0c;它可能在高维上&#xff0c;十分抽象&#xff0c;但是却可以有丰富的语义含义&#xff0c;从而完成一系列任务 回归任务是预测一个准确的值&#xff0c;例如拟合一条直线的时候&#xff0c;我们希望每一个点的值都能对应上 分类任务则…

java多线程(六)关键字Volatile可见性、有序性以及单个变量的原子性

volatile关键字 作用 volatile 是 Java 虚拟机提供的轻量级的同步机制&#xff0c;主要用来确保变量被线程安全地读取和写入。 当一个变量定义为 volatile 后&#xff0c;它具备以下特性&#xff1a; 可见性&#xff1a;确保不同线程对这个变量操作的可见性&#xff0c;即一…

深入学习SQL优化的第三天

目录 聚合函数 排序和分组 聚合函数 1251. 平均售价 表&#xff1a;Prices------------------------ | Column Name | Type | ------------------------ | product_id | int | | start_date | date | | end_date | date | | price | int …

K8S - Java微服务配置 - 使用ConfigMap配置redis

参考文档&#xff1a;https://v1-27.docs.kubernetes.io/zh-cn/docs/tutorials/configuration/configure-redis-using-configmap/ cat <<EOF >./example-redis-config.yaml apiVersion: v1 kind: ConfigMap metadata:name: example-redis-config data:redis-config: …

“解决Windows电脑无法投影到其他屏幕的问题:尝试更新驱动程序或更换视频卡“

目录 背景: 解决方法1: 解决方法2: 什么是驱动程序&#xff1a; 背景: 今天在日常的工作中&#xff0c; 我想将笔记本分屏到另一个显示屏&#xff0c;我这电脑Windows10系统&#xff0c;当我按下Windows键P键&#xff0c;屏幕信息上提示我"你的电脑不能投影到其他屏幕…

C++:继承(protected、隐藏、不能被继承的类、)

目录 继承的概念 继承的使用 继承方式 protected 继承类模板 赋值兼容转换 隐藏 子类的默认成员函数 构造函数 拷贝构造函数 赋值重载函数 析构函数 不能被继承的类 方法1&#xff1a;父类的构造函数私有 方法2&#xff1a;final 继承与友元 继承与静态成员 …

Redis 键值型数据库

一、Redis是什么 Redis&#xff1a;REmote DIctionary Server&#xff08;远程字典服务器&#xff09; 是完全开源免费的&#xff0c;用C语言编写的&#xff0c;遵守BSD协议&#xff0c;是一个高性能的&#xff08;Key/Value&#xff09;分布式内存数据 库&#xff0c;基于内存…

tcp 和udp通信

一.recvfrom recvfrom函数是一个系统调用&#xff0c;用于从套接字接收数据。该函数通常与无连接的数据报服务&#xff08;如 UDP&#xff09;一起使用&#xff0c;但也可以与其他类型的套接字使用。与简单的 recv() 函数不同&#xff0c;recvfrom() 可以返回数据来源的地址信息…

FreeRTOS学习:内存管理

FreeRTOS内存管理简介 在使用 FreeRTOS 创建任务、队列、信号量等对象的时候&#xff0c; FreeRTOS 一般都提供了两种方法&#xff0c; 动态方法创建&#xff1a;自动地从 FreeRTOS 管理的内存堆中申请所创建对象所需的内存&#xff0c;在对象被删除后&#xff0c;又可以将这…