1. 程式人生 > >JAVA類集框架筆記(二)

JAVA類集框架筆記(二)

三、集合的輸出

    在類集中提供了以下4種常見的輸出方式 :

         (1)Iterator : 迭代輸出,是使用最多的輸出方式

         (2)ListIterator:是 Iterator的子介面,專門用於輸出List中的內容

         (3)foreach:JDK 1.5之後提供的新功能,可以輸出陣列或集合

         (4)Enumeration :一箇舊的介面,與Iterator功能類似

說明:4種方式以 Iterator 介面為標準輸出形式,使用最廣泛。

 (一)、迭代輸出 Iterator

            輸出 Collection集合中的全部內容,程式碼如下 :

import java.util.ArrayList;
import java.util.List;
import java.util.Iterator;
public class IteratorDemo{
	public static void main(String[] args){
	    List<String> all = new ArrayList<String>();       //例項化LIst介面

		all.add("hello");            //增加元素
		all.add("_");                //增加元素        
		all.add("world");            //增加元素
       
	    Iterator<String> iter = all.iterator();         //例項化Iterator介面
		while(iter.hasNext()){                          //依次判斷
		    System.out.print(iter.next() + "、");       //輸出內容
		
      }
   }
}

程式執行結果 :

     

 

 (二)、雙向迭代輸出 ListIterator

             Iterator介面的主要功能是 由前向後 單向輸出,如果想實現 由後向前 或 由前向後 的雙向輸出,就可以使用 Iterator 的子介面------ListIterator

       進行雙向迭代,程式碼如下 :

import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
public class ListIteratorDemo{
	public static void main(String[] args){
	    List<String> all = new ArrayList<String>();       //例項化List介面

		all.add("hello");            //增加元素
		all.add("_");                //增加元素        
		all.add("world");            //增加元素
       
	    ListIterator<String> iter = all.listIterator();         //例項化Iterator介面

		System.out.print("由前向後輸出 :");
		while(iter.hasNext()){                          //依次判斷
		    String str = iter.next();
		    System.out.print(str + "、");       //輸出內容
		}
        
		System.out.print("\n\n由後向前輸出 :");
                 while(iter.hasPrevious()){
		    String str = iter.previous();
		    System.out.print(str + "、");

        }
    }
}

程式執行結果 :

     

 

(三)、Java新支援 foreach

          foreach 的輸出格式 : 

for(類  物件 :集合) {  
        //集合操作      
}

         使用 foreach 輸出,程式碼如下 :

import java.util.ArrayList;
import java.util.List;
public class ForeachDemo{
	public static void main(String[] args){
	    List<String> all = new ArrayList<String>();       //例項化LIst介面

		all.add("hello");            //增加元素
		all.add("_");                //增加元素        
		all.add("world");            //增加元素
       
	    for(String str : all){
	      System.out.print(str + "、"); 
      }
   }
}

程式執行結果 :

     

 

(四)、舊介面 Enumeration

        Enumeration介面和Vector介面在JDK 1.0時就存在了,兩個類的使用與現在常用的Iterator和List非常類似。首先使用Vector類的 elements()方法為Enumeration介面例項化,然後使用 hasMoreElements()方法迭代判斷並通過 nextElement()方法取出每一個元素。程式碼如下 :

import java.util.Enumeration;
import java.util.Vector;
public class EnumerationDemo{
	public static void main(String[] args){
	    Vector<String> all = new Vector<String>();       //只能使用Vector

		all.add("hello");
		all.add("_");
		all.add("world");
        
		Enumeration<String> enu = all.elements();        //例項化Enumeration
		while(enu.hasMoreElements()){
		   System.out.print(enu.nextElement() + "、");

      }
   }
}

程式執行結果  :