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

从Protocol到硬件控制:揭秘高通UEFI中ABL与XBL的协作机制 本文深入解析了高通UEFI架构中ABL与XBL的协作机制,重点探讨了Protocol通信在硬件控制中的关键作用。通过对比传统GPIO控制方式,揭示了Protocol架构在安全性、可维护性和灵活性方面的优势,并提供了关机充电场景的实战案例分析及调试技巧。 阅读详情

迭代器的使用

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

​ 一般遍历数组都会选择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 中的元素,而且运行有相同的元素。
Seedance 2.5本地部署指南:AI生图与视频生成的完整实践 最近在AI生成内容领域,本地部署方案越来越受到开发者关注。特别是Seedance 2.5的发布,让很多原本依赖云端服务的用户开始转向本地化解决方案。本文将从实际使用角度出发,完整介绍Seedance 2.5的本地部署流程、功能特性对比以及实际应用技巧。 1. Seedance 2.5核心特性解析 1.1 什么是Seedance 2.5 Seedance 2.5是一款开源的AI生图和视频生成工具,支持在本地环境运行,无需联网即可实现高质量的图像和视频生成。相比之前的2.0版本,2.5在生成质量、运行效率和功能 阅读详情

相关推荐

Obsidian和Typora图片路径同步终极指南:告别混乱的assets文件夹

本文详细解析了Obsidian与Typora图片路径同步的终极解决方案,通过Custom Attachment Location插件实现动态路径管理,解决了两款工具间图片兼容性问题。文章提供了从基础配置到高级应用的完整指南,帮助用户告别混乱的assets文件夹,提升工作效率。

g9h0i1的博客 826

Iterator迭代器遍历list、map集合

Iterator迭代器遍历list、map集合

清影的博客 2155

C#调用Bartender打印标签,除了打印还能一键导出图片和PDF(附完整代码)

本文详细介绍了如何使用C#集成Bartender实现标签的多格式输出,包括打印、图片和PDF导出。通过完整的代码示例和实战技巧,帮助开发者解决分辨率适配、纸张尺寸控制等核心问题,提升工业自动化和物流管理中的标签处理效率。

weixin_31236101的博客 370

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万+

从零开始玩转机械臂:用Matlab+Robotics Toolbox实现四自由度机械臂运动仿真

本文详细介绍了如何利用Matlab及其Robotics Toolbox工具箱,从零开始构建并仿真一个四自由度机械臂。通过D-H参数建模、正向运动学验证、交互式操控以及轨迹规划等实践步骤,帮助初学者在虚拟环境中直观理解机器人运动学核心概念,为后续硬件实现奠定坚实基础。

weixin_29055699的博客 325

射频电路设计——射频器件基础

本文仅供自己复习使用,请勿转载! 射频电路制作方法 MCM工艺 CMOS工艺 趋肤效应、深度 频率越高趋肤效应越明显 高频器件 高频电阻 绕线的比贴片的多一个电感,是因为绕线的因为是线绕制的,只有有线就会有电感,所以绕线电阻等效模型会比贴片的多一个电感 多晶硅电阻模型 深线性区MOS电阻 高频电阻的频率响应 记忆的话就后面的频率特性有点像电容的 高频电容 作用 单层贴片式电容 多层贴片式电容 MIM电容 MOM电容 由于是并联的,所以总的电容值是单个的直接相加 PN结电容 M.

输出每日所学,供大家学习使用 7153

遍历容器(List,Set,Map)

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

weixin_67630324的博客 778

LangGraph的容错机制:从节点失败到图级回滚

核心概念铺垫:讲解LLM应用容错与事务性的核心概念(幂等性、重试策略、降级策略、快照、回滚、原子性、一致性、隔离性、持久性、最终一致性),对比LangGraph容错机制与传统数据库ACID事务、Apache Airflow/Kubernetes Workflow/Kubeflow Pipelines容错机制的异同;LangGraph容错机制的演进历史:用markdown表格梳理LangGraph从0.0.1到1.5.0(截止202X年X月)的容错机制发展历程;节点级别的容错:重试与降级。

AI Python 编程之道的博客 175

迭代器(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

基于Simulink的新能源汽车热管理系统设计与仿真详细介绍

新能源汽车(如纯电动汽车和混合动力汽车)的热管理系统是确保电池、电机和电控系统高效运行的关键。通过合理设计热管理系统,可以提高车辆的续航里程、延长电池寿命并提升整体性能。以下是如何在 MATLAB 和 Simulink 中设计并仿真一个新能源汽车热管理系统的详细步骤。通过上述步骤,我们成功设计并实现了基于 Simulink 的新能源汽车热管理系统。该系统能够根据目标温度和实际反馈,通过 PID 控制器或模糊控制器调整冷却液流量、风扇转速等参数,实现对电池、电机和车内的精确温度控制。

xiaoheshang_123的博客 385

目标跟踪与视频时序分析基础

两帧均有目标,却因快速移动导致检测框无重叠,仅靠交并比(IoU)无法维持身份关联。本文通过手算与纯Python实现最小跟踪流程,揭示IoU仅为位置线索,不能应对快速位移或遮挡。实验表明,即使目标真实存在,低重叠也会触发新编号。强调跟踪需结合运动预测、外观特征与阈值验证,避免误判。

Mr数据杨 2335

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

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

chengqingshihuishui的博客 791

SMART200如何实现多次调用子程序带定时器功能

1、西门子200PLC的子程序由于很多限制条件,如果希望建立一个可以多次调用的子程序,那么这个子程序里是不能含有定时器指令的,所以我们只能退而求其次了。建议将沿指令(上升沿、下降沿)放在多次调用子程序的外面。 2、可以提供不同的时基,提供不同时间的定时 3、实现秒定时 5、子程序内部: STL代码: 1、时基信号由外部提供、 可以提供不同的时基信号 2、实现循环定时开关 LD #Start:L0....

RXXW_Dor的博客 1万+

容器迭代器遍历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

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

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

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

kali_Chenye的博客 1214

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

迭代器遍历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

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

用迭代器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、付费专栏及课程。

余额充值