程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> java對象群體的組織:Enumeration及Iterator類

java對象群體的組織:Enumeration及Iterator類

編輯:關於JAVA

在一般情況下,遍歷集合類會使用一下方式:

for(int i=0;i<v.size();i++)

Customer c=(Custormer)v.get(i);

使用Enumeration類和Iterator類可以簡化這個過程

1.Enumeration類  (權舉)

使用范圍:Vector類

方法:

boolean hasMoreElement() //測試此枚舉是否包含更多的元素.

Enumeration nextElement() //如果此枚舉對象至少還有一個可提供的元素,則返回此枚舉的下一個元素。

使用舉例:

Enumeration e=v.enumeration();
while(e.hasMoreElement())
Customer c=(Customer)e.nextElement(); //注意:使用Enumeration同樣需要對元素進行顯式轉換

缺點:在遍歷過程中刪除元素效果,原因唔系好清楚,所以建議使用Iterator類的remove()

2.Iterator類  //據說是Enumeration類的改進版

使用范圍:Vector類,ArrayList類,HashTable類等等

方法:

boolean hasNext() //判斷是否還有下一個元素
Iteraor next() //返回下一元素
void remove() //從集合類仲去除最後調用next()返回的元素。注意:調用集合類的remove()刪除元素效果的效果唔理想,所以建議使用Iterator類的remove()

使用舉例:

Iterator e=v.elemention();
while(e.hasNext())
Customer c=(Customer)e.next(); //講埋最後一次,獲取集合類的元素時必須進行顯式轉換,一定要記住

心得體會:

本人認為Vector類使用順序存儲結構,所以對於不用長度的元素處理能力較差。而Iterator使用的應該是單鏈存儲結構,所以能夠與其對應的集合對象保持一致。

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