程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> 【Java學習筆記】<集合框架>Iterator的子接口ListIterator,java集合iterator

【Java學習筆記】<集合框架>Iterator的子接口ListIterator,java集合iterator

編輯:JAVA綜合教程

【Java學習筆記】<集合框架>Iterator的子接口ListIterator,java集合iterator


 1 import java.util.ArrayList;
 2 import java.util.Iterator;
 3 import java.util.List;
 4 
 5 public class Test3 {
 6 
 7     public static void main(String[] args) {
 8         List list = new ArrayList();
 9         
10         list.add("abc1");
11         list.add("abc2");
12         list.add("abc3");
13         list.add("abc4");
14         
15         Iterator it = list.iterator();
16         while (it.hasNext()){
17             Object obj = it.next();   //java.util.ConcurrentModificationException
18             
19             if (obj.equals("abc2")){
20                 list.add("abc9");     //在迭代器過程中,不要使用集合操作元素,容易出現異常。
21                                       //可以使用Iterator接口的子接口ListIterator來完成在迭代中對元素進行更多的操作
22             }
23             else
24                 System.out.println("next:"+obj);
25         }
26         System.out.println(list);
27 
28     }
29 
30 }

 

 

 1 import java.util.ArrayList;
 2 import java.util.List;
 3 import java.util.ListIterator;
 4 
 5 public class Test3 {
 6 
 7     public static void main(String[] args) {
 8         List list = new ArrayList();
 9         
10         list.add("abc1");
11         list.add("abc2");
12         list.add("abc3");
13         list.add("abc4");
14         
15         System.out.println("list:"+list);
16         
17         ListIterator it = list.listIterator();//獲取列表迭代器的對象
18                                               //它可以實現在迭代過程中完成對元素的增刪改查
19                                                //注意:只有list集合具備該迭代功能
20         
21         System.out.println("hasNext:"+it.hasPrevious()); //返回列表中當前位置的前面是否有元素的結果。 true or false
22         
23         while (it.hasNext()){
24             Object obj = it.next();
25             
26             if (obj.equals("abc2")){
27                 it.set("abc9");     //用指定元素替換 next 或 previous 返回的最後一個元素(可選操作)。
28             }
29         }
30         
31         System.out.println("list:"+list);
32         System.out.println();
33         
34         System.out.println("hasNext:"+it.hasNext());
35         System.out.println("hasNext:"+it.hasPrevious());
36         System.out.println();
37         
38         while (it.hasPrevious())
39         {
40             System.out.println("Previous:"+it.previous());
41         }
42         System.out.println();
43         
44         System.out.println("list:"+list);
45     }
46 
47 }

 

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved