Iterator 和 ListIterator

iterator的用法:

 /*Iterator it = list.iterator();
while(it.hasNext()){
			
	Object obj = it.next();//java.util.ConcurrentModificationException
	//在迭代器过程中,不要使用集合操作元素,容易出现异常。
	//可以使用Iterator接口的子接口ListIterator来完成在迭代中对元素进行更多的操作。 
			
	if(obj.equals("abc2")){
		list.add("abc9");
	}
	else
		System.out.println("next:"+obj);
	}
	System.out.println(list);
*/

ListIterator的用法

/*Iterator it = list.iterator();
while(it.hasNext()){
			
	Object obj = it.next();//java.util.ConcurrentModificationException
	//在迭代器过程中,不要使用集合操作元素,容易出现异常。
	//可以使用Iterator接口的子接口ListIterator来完成在迭代中对元素进行更多的操作。 
			
	if(obj.equals("abc2")){
		list.add("abc9");
	}
	else
		System.out.println("next:"+obj);
	}
	System.out.println(list);
*/
		
以下代码才是正确的写法:
		
List list = new ArrayList();
						
				
list.add("abc1");
list.add("abc2");
list.add("abc3");
				
System.out.println("list:"+list);
ListIterator it = list.listIterator();//获取列表迭代器对象
//它可以实现在迭代过程中完成对元素的增删改查。
//注意:只有list集合具备该迭代功能.
				
				
while(it.hasNext()){
					
Object obj = it.next();
					
if(obj.equals("abc2")){
	it.set("abc9");
  }
}
//		System.out.println("hasNext:"+it.hasNext());
//		System.out.println("hasPrevious:"+it.hasPrevious());
				
				
while(it.hasPrevious()){
       System.out.println("previous:"+it.previous());
}
	System.out.println("list:"+list);
				
				
	List特有的取元素的方法
				
	list.add("abc1");
	list.add("abc2");
	list.add("abc3");
	list.add("abc4");
						
Iterator it = list.iterator();
	while(it.hasNext()){
	System.out.println("next:"+it.next());
}
						
//list特有的取出元素的方式之一。
						
for(int x=0; x<list.size(); x++){
	System.out.println("get:"+list.get(x));
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值