迭代器的使用之List和Map的遍历

【系统架构设计师】模拟预测试卷十 - 案例分析(完整结构) 本文为系统架构设计师考试模拟试题及参考答案,包含五个专题:质量属性(必答)、信息系统架构设计、嵌入式系统架构设计、云原生架构设计、面向服务架构设计(SOA)。试题一聚焦非功能需求与质量属性映射,如性能、可修改性、一致性等;其余选答题分别涉及分层架构设计(如嵌入式实时控制)、云原生会话管理、服务化治理(如契约设计、熔断策略)等核心架构场景,涵盖战术应用、权衡分析及解决方案设计。参考答案提供关键要点,例如离线借还的冲突解决、服务编排与共享服务的区分、嵌入式硬实时保护的必要性等,适用于备考实战演练。 阅读详情

迭代器的使用

  很多情况下,我们会希望遍历一个集合中的元素。例如,显示一个集合中的所有元素。

​ 一般遍历数组都会选择for或者增强for,这两个方法其实也可以用在集合框架之中;还有一种方法是可以采用迭代器遍历集合框架,它是一个对象,实现了 Iterator 接口或者是 ListIterator 接口。使用迭代器,你可以通过循环来删除或者得到集合的元素。ListIterator 继承了 Iterator ,以允许双向遍历列表和修改元素。

遍历 ArrayList
package com.lichee.date;

import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;

/**
 * Created by lichee Yang on 2017-03-02.
 */
public class ArraryList {
    public static void main(String[] args) {

        List<String> list = new ArrayList<String>();
        list.add("lichee");
        list.add("yang");

       // 使用 foreach 遍历 list
        for (String str:list){
            System.out.println(str);
        }

       // 使用迭代器进行相关的遍历
        ListIterator<String> ite = list.listIterator();
        while (ite.hasNext()){
            System.out.println(ite.next());
        }


    }
}

遍历Map

package com.lichee.date;


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

/**
 * Created by lichee Yang on 2017-03-02.
 */
public class MapErgodic {
    public static void main(String[] args) {
        Map<String,String> map = new HashMap<>();
        map.put("1","lichee");
        map.put("2","yang");

        System.out.println("通过 map.values() 获得 value,但是不能获得 key");
        for (String val : map.values()){
            System.out.println(val);
        }

        System.out.println("通过 map.keyset() 遍历得到 key 和value");
        for (String key : map.keySet()){
            System.out.println("key = " + key + " ; value ="+ map.get(key));
        }

        System.out.println("通过 map.entrySet() 遍历得到 key 和 value,容量大时适用");
        for (Map.Entry<String,String> mapentry : map.entrySet()){
            System.out.println(mapentry);
        }

        System.out.println("通过 map.entrySet() 使用 iterator 遍历 key 和 value");
        Iterator<Map.Entry<String , String>> it = map.entrySet().iterator();
        while (it.hasNext()){
            Map.Entry<String , String> entry = it.next();
            System.out.println("key = " + entry.getKey() + " ; value ="+ entry.getValue());
        }
    }
}
解析
  1. HashMap 是一个散列表,它存储的内容是键值对(key–value)映射。该类实现了 Map 接口,根据键的 HashCode 值存储数据,具有很快的访问速度,最多运行一条记录的键为 null, 不支持同步线程。
  2. List 接口是一个有序的 collection ,使用此接口能够精准的控制每个元素的插入的位置,能够通过索引(元素在 list 中的位置,类似于数组的小标)来访问 list 中的元素,而且运行有相同的元素。
YOLO26改进策略【卷积层】| 引入注意力卷积模块RFAConv,关注感受野空间特征 助力YOLO26精度提升 RFAConv:创新空间注意力和标准卷积运算感受野空间特征是针对卷积核设计的,根据卷积核大小动态生成。以3×3卷积核为例,它由非重叠滑动窗口组成,每个窗口代表一个感受野滑块。 阅读详情

相关推荐

Dify如何实现自主学习

摘要:Dify通过构建感知-决策-执行-反馈的闭环实现"自主学习",本质是打造能自动获取信息、更新知识库并调整策略的Agent工作流。核心包括:1)建立知识库作为记忆体;2)搭建感知与执行工具获取实时信息;3)通过工作流编排决策"大脑",包含LLM决策节点、行动执行节点和反馈反思节点。典型应用如根据用户反馈优化回答风格,通过存储反思日志到知识库实现持续优化。这种机制使智能体能基于新数据和经验不断自我改进。

专注于技术研发行业技术主要有AI人工智能视觉识别、物联网技术、电商平台、app原生技术、微信小程序、鸿蒙语言开发、办公企业oa、ERP等,致力于做东半球最优秀的程序员 727

Iterator迭代器遍历list、map集合

Iterator迭代器遍历list、map集合

清影的博客 2155

Android布局基础与UI设计入门:打造精美应用界面

恭喜你!现在你已经掌握了Android UI开发的基础知识,包括各种布局类型、常用控件的使用以及一些UI优化技巧。这些知识将帮助你设计出既美观又实用的Android应用界面。

m0_65382359的博客 2059

HashMap的两种遍历(迭代器Iterator)方式

第一种:   Map map = new HashMap();   Iterator iter = map.entrySet().iterator();   while (iter.hasNext()) {   Map.Entry entry = (Map.Entry) iter.next();   Object key = entry.getKey();   Object val = entr...

Huangxu_MIKU的博客 1万+

OPC DCOM详细配置方法 - 不关防火墙不换登陆用户

1. 前言   OPC DCOM的设置是实现跨网络OPC通信的基础,现有的一些OPC DCOM配置教程虽然讲解了如何配置DCOM,但没有讲清楚为什么要这么做,而且各个教程涉及的配置方法也不尽相同。   为了彻底搞清楚OPC DCOM的配置过程,我重新做了两台机器的系统,一台是Windows 7 32位,一台是Windows 10 64位,并且重零开始完整的测试了正常运行OPC DCOM所需的最少的...

steventian72的博客 3万+

别再自己写消息提示了!5分钟用WPF+Material Design打造专业级Snackbar(支持.NET 6)

本文为WPF开发者提供了一份快速集成专业级Snackbar消息提示的实战指南。通过引入MaterialDesignThemes开源库,在.NET 6 WPF项目中,仅需5分钟即可告别传统的MessageBox,实现遵循Material Design规范、动画流畅、支持队列管理的非侵入式Snackbar控件,显著提升应用的用户体验与现代化交互水平。

year5的博客 174

遍历容器(List,Set,Map)

需要注意的是Set是无序不可重复的,也就意味着Set不可以使用for循环运用索引遍历。Set的遍历可以用迭代器和增强for循环(foreach)

weixin_67630324的博客 778

基于STM32与CAN总线的多电机协同控制系统设计与实现

本文详细介绍了基于STM32与CAN总线的多电机协同控制系统设计与实现。该系统采用分布式架构,通过CAN总线实现多节点通信,结合梯形加减速算法和同步控制策略,有效解决了工业自动化中多电机同步性差的问题。文章涵盖硬件设计、通信协议、抗干扰措施及实战调试经验,为工业应用提供高可靠性解决方案。

tech5的博客 972

迭代器(Iterator)遍历List、Set、Map

为什么用迭代器了,在《Java编程思想》这本书里说,是因为最初的时候你用for循环遍历List,之后人家又要你遍历Set,但是for循环无法遍历Set,因为Set是无序的,所以后面就统一用迭代器遍历集合了。 // 遍历List List<String> list = new ArrayList<String>(); list.add("a"); list.add("b"); Iterator<String> iterator = list.iterator(); .

moqiyong666的博客 800

COMSOL有限元仿真深度指南:连接薄结构与实体结构(I)

COMSOL有限元仿真深度指南:如何在结构力学仿真中连接薄结构与实体结构?

忘了面孔的Batou 1万+

【深度学习新浪潮】李飞飞团队VAGEN框架深度解析:让VLM智能体学会“三思而后行“

VAGEN框架的真正价值,不仅在于性能指标的突破,更在于重新定义了VLM智能体的发展方向——人工智能的进步不应只追求"做得对",更要实现"想得清"。李飞飞团队通过强制显式思考、动态表示适配和精细化奖励三大创新,让智能体第一次具备了可解释的世界建模能力。正如人类通过"观察-预测-行动"认识世界,VAGEN为AI注入的这种思考范式,或许正是通往通用人工智能的关键一步。对于开发者而言,开源的VAGEN框架不仅提供了强大的工具,更揭示了一个重要理念:让AI学会思考,比让它学会执行更重要。

专注:太空算力、AI infra、异构调度、大模型成本工程 282

JAVA重点类 集合List Map 迭代器 foreach

一、集合概述 一方面,而向对象语言对事物的体现都是以对象的形式,为了方便对多个对象的操作,就要对对象进行存储。另一方面,使用Array(数组)存储对象方面具有一些弊端,而Java集合就像一种容器,可以动态地把多个对象的引用放入容器中。 说明:此时的存储,都是指的内存层面的存储,不涉及持久化(硬盘)的存储(.txt, .jpg, . avi , 数据库等媒介) 1、数组在内存存储方面的特点: (1)数组初始化以后,长度就确定了。(不可对长度进行修改) (2)数组声明的类型,就决定了进行元素初..

chengqingshihuishui的博客 791

【文献笔记】ICCV 2021 | Point Transformer

作者提到,特别适合点云处理,因为自注意力机制是的核心,本质上就是一个集合算子:它对输入元素具有顺序不变性和数量不变性3D点云是无序的,即使改变点云txt文件中的点顺序也不会有任何影响。自注意力机制天然具有排列不变性,因为它通过对所有"点对"的关系进行建模来处理输入,而不依赖于任何特定的输入顺序点云数据通常覆盖了3D空间中的对象或场景,理解这些数据需要捕捉点与点之间复杂的空间关系。自注意力机制能够有效的捕捉这些关系,因为它为每个"点对"赋予一个。

m0_55908255的博客 966

容器迭代器遍历List、Set、Map的用法实例

1、List中的对象,可以通过下索引进行遍历,也可以通过迭代器进行遍历。 List list = new ArrayList(); list.add("aaa"); list.add("bbb"); list.add("ccc"); for (int i =0;i<list.size();i++){ ...

zxjzxj1234的专栏 283

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

迭代器Iterator的使用 遍历List,Set,Map

迭代器iterator的使用 遍历List,Set,Map 迭代器(Iterator) 迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结构。迭代器通常被称为“轻量级”对象,因为创建它的代价小。 Java中的Iterator功能比较简单,并且只能单向移动: (1) 使用方法iterator()要求容器返回一个Iterator。第一次调用Iterat...

kali_Chenye的博客 1214

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

迭代器遍历List Set Map

迭代器遍历List Set Map - - package cn.sxt.collection; - - import java.util.ArrayList; - import java.util.HashMap; - import java.util.HashSet; - import java.util.Iterator; - import java.util.List; - impor...

weixin_44019182的博客 941

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

用迭代器Iterator遍历List, Set ,Map

package 容器集合; import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Map.Entry; impo...

qq_43407321的博客 1150

使用迭代器Iterator遍历List、Set、Map

1.List List list =new ArrayList(); list.add("list4"); list.add("list2"); list.add("list3"); for (Iterator iterator=list.iterator();iterator.hasNext();){ System.out.println(iterator.next()); } 2.S...

qq_42102837的博客 2502

Iterator迭代器遍历容器元素(List/Set/Map)

public class TestIterator{ public static void main(String[] args){ testIteratorList(); testIteratorSet(); testIteratorMap(); } //List public static void testIteratorList(){ List<String&...

qq_35047756的博客 536

java 迭代器遍历List、Set和Map

public class test { public static void main(String[]args) { iteratorlist(); iteratorset(); iteratormap(); } //**遍历List** *Iterator<String> it* 获得String类型的迭代器对象 *list.iterator()* ...

biezanhan0147的博客 444

java 迭代器遍历List Set Map

Iterator接口: 所有实现了Collection接口的容器类都有一个iterator方法用以返回一个实现Iterator接口的对象 Iterator对象称作为迭代器,用以方便的对容器内元素的遍历操作,Iterator接口定义了如下方法: boolean hashNext();//判断是否有元素没有被遍历 Object next();//返回游标当前位置的元素并将游标移动到下一个位置 ...

weixin_30385925的博客 256

list,set,map的遍历及迭代器的使用

list遍历 List list=new ArrayList(); //迭代器 性能安全,效率低 for(Iteratoriterator=list.iterator();iterator.hasNext()

weixin_43708218的博客 471

Java_Iterator迭代器遍历容器元素List Set Map

//一般遍历 List Set Map 使用增强for循环 就是foreach和迭代器(可以在循环中使用remove()方法删除) import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; import java.util.List; im...

LongKai_G 1034

迭代器遍历List Map Set

迭代器遍历List Map Set package cn.dct.oop; import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; import java.util.List; import java.util.Map; import ja...

zrr_520的博客 178

使用迭代器遍历List、Set、Map

import java.util.*; public class TestIterator { public static void main(String[] args) { testItetatorList(); testItetatorSet(); testItetatorMap(); } public static void testItetatorList(){ List<String> lis.

weixin_51994374的博客 591

测试迭代器Itertor遍历List,Set,Map

测试迭代器Iterator遍历List,Set,Map迭代器遍历List迭代器遍历Set迭代器遍历Map 迭代器遍历List public static void TestIteratorList() { List <String> list = new ArrayList(); list.add("阿狸"); list.add("阿卡丽"); list.add("瑞文"); //使用Iterator遍历List for(Iterator <String>

weixin_45208757的博客 248
上一篇: 基金--申购
下一篇: 货币基金
荔枝妹妹
博客等级 码龄10年 6粉丝 15原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值