歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Java 迭代器 Iterator ListIteator

Java 迭代器 Iterator ListIteator

  1.  import java.util.*;  
  2. class Animal  
  3. {  
  4.  String name;  
  5.  int age;  
  6.    
  7. }  
  8. public class List {  
  9.  public static void main(String args[])  
  10.  {  
  11.   ArrayList list=new ArrayList();  
  12.   list.add(1);  
  13.   list.add(2);  
  14.   list.add(3);  
  15.   list.add(4);  
  16.   list.add(5);  
  17.   list.add(6);  
  18.   /*   //直接 用Iterator 來遍歷Arraylist 
  19.  //list.remove((Object)3); 
  20.   for(Iterator it=list.iterator();it.hasNext();) 
  21.   { 
  22.    System.out.println(it.next()); 
  23.   } 
  24.    
  25.    * 直接 用 ListIterator來遍歷ArrayList; 
  26.    *  
  27.   for(ListIterator  it=list.listIterator(); it.hasNext();) 
  28.   { 
  29.    System.out.println(it.next()); 
  30.   } 
  31.   */  
  32.   /* 
  33.    * 下面用Iterator 來刪除數據 
  34.    *  
  35.   for(Iterator it=list.iterator();it.hasNext();) 
  36.   { 
  37.    if(it.next()==((Object)4)) 
  38.    { 
  39.     it.remove(); 
  40.    } 
  41.   } 
  42.   for(Iterator it2=list.iterator();it2.hasNext();) 
  43.   { 
  44.    System.out.println(it2.next()); 
  45.   } 
  46.   下面用ListIterator 來添加元素 
  47.    
  48.   for(ListIterator it=list.listIterator();it.hasNext();) 
  49.   { 
  50.    if(it.next()==((Object)3)) 
  51.    { 
  52.     it.add("three"); 
  53.      
  54.    } 
  55.   } 
  56.   for(ListIterator it2=list.listIterator();it2.hasNext();) 
  57.   { 
  58.    System.out.println(it2.next()); 
  59.   } 
  60.    
  61.      for(ListIterator it=list.listIterator();it.hasNext();) 
  62.      { 
  63.       it.add("add"); 
  64.       it.next(); 
  65.      } 
  66.      for(Iterator it2=list.iterator();it2.hasNext();) 
  67.      { 
  68.       System.out.println(it2.next()); 
  69.      }*/  
  70.   //System.out.println(list.descendingIterator());   
  71.        
  72.     
  73.     
  74.  }  
  75. }  
  76. /* 
  77.  *     注意:對用撫今迭代器對容器進行操作時,在迭代的過程中,不能用容器的方法對容器進添加.修改.刪除操作.這樣 
  78.  *     會引起並發操作異常,因為在迭代器迭代的過程中,不允許用迭代器以外的方法使元素改變,所以只能用迭代器裡面的方法對容器進行修改,所以下面的操作會出現錯誤 
  79.  *     for(Iterator it=list.iterator();it.hasNext();) 
  80.  *      { 
  81.  *       if(it.next().equals("abc")) 
  82.  *        list.add("def");  //這個就會出現 
  83.  *      } 
  84.  *     下面用ListIterator 來添加元素 
  85.  *        for(ListIterator it=list.listIterator();it.hasNext();) 
  86.  *           { 
  87.  *            if(it.add("google"))   //這樣就可能添加了 
  88.  *           } 
  89.  *      
  90.  *  
  91.  *  
  92.  *                                              2011/10/27  7:57:39  
  93.  * */  
Copyright © Linux教程網 All Rights Reserved