public class TestList {
public static void main(String[] args){
List list = new ArrayList();
list.add("a1");
list.add("a2");
list.add("a3");
list.add("a4");
ListIterator it = list.listIterator();
//list特有的ListIterator迭代器,遍历时候可以对list进行增删查改
while (it.hasNext()){//正序遍历
Object object = it.next();//it.next 不能出现超过一次
if(object.equals("a1")){
it.add("a5");//增加
}
if(object.equals("a2")){
it.set("a6");//修改
}
if(object.equals("a3")){
it.remove();//删除
}
}
System.out.println(list);
StringBuilder sb = new StringBuilder();
ListIterator it2 = list.listIterator(list.size()); //list.size相当于是指针
while (it2.hasPrevious()){//倒序遍历
Object object = it2.previous();
sb.append(object+",");
}
System.out.println("ches"+sb.toString());
}
}
相关推荐
航天仿真必看:如何用SOFA库实现高精度GCRS-ITRS坐标转换?避坑指南
本文深入解析了航天仿真中高精度GCRS-ITRS坐标转换的关键技术,重点介绍了SOFA库在天球系与轨道系转换中的权威应用。通过对比传统方法的误差来源,详细阐述了SOFA库的转换算法优势、工程实现步骤及误差控制策略,为航天器轨道仿真提供毫米级精度的解决方案。
Iterator遍历List
1.迭代器的使用 List<E> paramList = list; //新建一个List Iterator<E> it = param.iterator();//获取List的迭代器 while (it.hasNext()) { //判断List中是否还有元素 E temp = it.next(); //将指针指向下一个元素 ...
【C++】小猫钓鱼纸牌游戏--C++实现
小猫钓鱼问题: 描述:初始,两个人各有n张牌(牌面0-10),顺序固定,只能按顺序出牌。然后,两个人轮流在桌面上以接龙的方式出牌,当某个人放置的牌在桌面上已经出现时,他收起相同牌面及其中间的牌作为自己的筹码,同时需要再放一张牌到桌面。某人手上的牌出完后,另一个人继续出,直到两人手上都没牌为止,输出结束时两个人手上的筹码数。 #include<iostream> using namespace std; struct queue { int head; //队列首 int tail; //
【Java】List 接口遍历元素的三种方式
List 接口遍历元素的三种方式
数据基础设施建设任务中的技术名词解析
近日,国家数据局确定了18个数据基础设施建设任务(先行先试)承担地区,建设任务内容为:数场、数据空间、数据原件、隐私计算、数联网、区块链。这些概念都有什么样的内涵,他们的相互关系是怎样的?
软件工程案例教程·韩万江【课后习题】
!!!!
使用ListIterator双向遍历集合
使用ListIterator双向遍历集合 @Test public void linkedListListIteratorTest(){ List< String > staff = new LinkedList(); staff.add ( "Amy" ) ; staff.add ( "Bob" ) ; staff.add ( "nCarl" )...
PCIE Lane Margining Linux 环境配置
Copy all the provided files in folder PYC38 or PYC310 to the created pcie_lmt folder. Index of /ftp/python/3.8.10/Copy below commands to a file and rename it as "scan_pcie.py", the commands are from "685662 PCIe-LMT-Gen4_Gen5-r0p77.pdf" in the lane margi
集合的遍历:Iterator 和ListIterator的详解
一,Iterator是一个接口,它是集合的迭代器。集合可以通过Iterator去遍历集合中的元素。Iterator提供的API接口如下: hasNext():如果迭代器中还有元素,则返回true。 next():返回迭代器中的下一个元素 remove():删除迭代器新返回的元素。 public static void main(String[] ...
对雷达中相位补偿概念的一些理解
基于多普勒相位补偿的速度扩展方法和DBF测角,两者本质上都是对相位进行补偿。
perl 安装DBI和DBD
还可以从cpan.perl.org站点下载tar压缩文件形式的源代码发行版本,解压缩后,切换到相应的文件目录 cd DBI-1.54 perl Makefile.PL make make test make install 安装DBD时候 需要export ORACLE_HOME 验证安装: perldoc DBD::Oracle perldoc DBI 在线文档; perldoc -m
List如何在遍历时删除元素
背景:业务中经常会涉及遍历list时对集合进行插入或者删除操作 一、 错误方式 先看看下面几段代码,1是foreach的方式去遍历list并删除元素,2是用迭代器的方式遍历list并删除元素,3是下标遍历 1. foreach public void testDel(){ List<Integer> list = Lists.newArrayL...
Power domain 划分该如何下手
假如PD1比PD3更always on的话,我们只需要插入普通buffer即可,因为PD3 on,PD1也肯定是ON,PD1 off,PD3肯定时off,PD1能cover PD3的电源情况,因此使用普通buffer也可,但是处于省电角度,我们还是使用AO buffer;在我们做多power domain时,在切分power domain时,需要谨慎,稍有不慎,就会出现congestion以及timing问题,那问题来了,我们在切分power domain时有什么考究么,今天小编就和大家一起讨论讨论。
Java Iterator与ListIterator原理
Iterator Iterator专门为遍历集合而生,集合并没有提供专门的遍历的方法 Iterator实现迭代器设计模式(设计模式23个:工厂模式、单例模式、迭代器模式) iterator.remove() 删除当前遍历到的值 foreach不能删除会出现ConcurrentModificationException 哪些集合可以使用Iterator遍历 Collection:可以 List:可以 Set:可以 Map:不可以,map并没有实现Iterator接口 提供iterator()方法的就可以
华为的C语言编程规范.pdf
华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。
精雕软件(JDpaint) 5.5 绿色版
精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版
迭代器Iterator&列表迭代器ListIterator
迭代器Iterator&列表迭代器ListIterator 文章目录迭代器Iterator&列表迭代器ListIterator一、迭代器Iterator概述基本操作注意事项二、列表迭代器ListIterator概述基本操作注意事项三、Iterator和ListIterator区别 一、迭代器Iterator 概述 Java Iterator(迭代器)Iterator是一个接口,它是集合的迭代器。集合可以通过Iterator去遍历集合中的元素。 Iterator 是 Java 迭代
NTscan扫描工具
ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。
关于ListIterator的用法
需要的注意点: 1. 正向遍历不需要传入数组长度值,反向遍历需要传入list的数组长度(迭代器指针指向最后一个位置) 2. 反向遍历,调用previous()获取元素,下标不会加1操作; 正向遍历,调用next()获取元素,下标会加1操作; 3. previousIndex()获取的是上一个元素的下标,nextIndex()获取的是当前元素的下标(不是下一个元素的下标) List<String> list = new ArrayList<String>();
efm32 入门.pdf
本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。
list - <kotlin>
和这是“可变迭代器”,用于列表(如添加/删除元素)
学习博客:列表迭代器相较于迭代器的优势
一般来说,常用的迭代器遍历我们都用的是Collection的遍历方法,这样就显得List自带的迭代器看起来很鸡肋,但是今天遇到给问题就是要给集合添加东西的时候,初代迭代器却无法实现add功能只有remove,这时候优势就出来了: 这是我第一次遇到问题的时候: List list = new ArrayList() ; list.add ("he11o.") ; list. add ("world") ; list.add("java") ; Iterator it = list.iterator() ; w
使用ListIterator 对List 遍历时添加、修改、删除
无论使用什么方式对List进行遍历,都不能直接对List<E>变量进行直接修改操作,比如: List<String> strList = new ArrayList<String>(); strList.add("john"); strList.add("mark"); strList....
java iterator转list_使用ListIterator 对List 遍历时添加、修改、删除
无论使用什么方式对List进行遍历,都不能直接对List变量进行直接修改操作,比如:ListstrList=newArrayList();strList.add("john");strList.add("mark");strList.add("alen");strList.add("jason");for(StringstrElem:strList){if(strElem.equals(...
使用ListIterator 对List遍历时修改,删除
使用ListIterator实现对List进行遍历时修改,以及List的反向遍历
238. Java 集合 - 使用 ListIterator 遍历 List 元素
本文介绍了Java中使用ListIterator遍历和修改List元素的方法。ListIterator继承自Iterator,支持双向遍历,并提供了set()方法直接修改元素。文章通过示例展示了如何在遍历时查找并替换特定元素,同时列举了ListIterator的常见使用场景,包括双向遍历、元素修改和索引获取。相比普通迭代器,ListIterator在操作列表时更加灵活高效。
List集合遍历时修改元素出现并发修改异常总结
import java.util.ArrayList; import java.util.Iterator; import java.util.List; import java.util.ListIterator; /* * * * * ConcurrentModificationException: * 当方法检测到对象的并发修改,但不允许这种修改时,
Java集合框架--List接口 & List接口的使用 & 列表迭代器ListIterator(可以任意方向遍历集合且遍历时可修改集合元素)
1. List接口 1.1 Collection体系: 1.2 什么叫做有序? 有序指的是添加的顺序与遍历的顺序应该保持一致,比如添加的顺序为a,b,c那么遍历的时候应该是a,b,c 1.3 接口常用方法(包含Collection接口的所有方法): LIst接口常用方法 Collection接口常用方法: 2. List接口的使用 2.1 示例代码01: 2.2 示例代码02: ...
ListIterator的用法
ListIterator 根据官方文档介绍, ListIterator 有以下功能: 允许我们向前、向后两个方向遍历 List;在遍历时修改 List 的元素;遍历时获取迭代器当前游标所在位置。 注意,迭代器 没有当前所在元素一说,它只有一个游标( cursor )的概念,这个游标总是在元素之间,比如这样: 初始时它在第 0 个元素之前,调用 next() 游标后移一位: 调用 previous() 游标就会回到之前位置。当向后...
listiterator java_Iterator和Listiterator之间的区别?
问题Iterator ite = Set.iterator();Iterator ite = List.iterator();ListIterator listite = List.listIterator();我们可以使用Iterator来遍历aSet或aList或aMap。但352729909只能用于遍历aList,它不能遍历aSet。为什么?我知道主要的区别在于,使用迭代器我们只能在一个方向...
850



被折叠的 条评论
为什么被折叠?



