Java集合框架 三 之集合輸出

2021-09-13 12:02:07 字數 1530 閱讀 4683

在之前進行集合輸出的時候都利用了tostring(),或者利用了list介面中的get()方法。這些都不是集合的標準輸出。

如果從標準上來講,集合輸出一共有四種手段:iterator、listiterator、enumeration、foreach,接下來就詳細講述一下這幾種方法

在jdk1.5之前,在collection介面中就定義有iterator()方法,通過此方法可以取得iterator介面的例項化物件;而在

jdk1.5之後,將此方法提公升為iterable介面中的方法。無論你如何提公升,只要collection有這個方法,那麼list、set

也一定有此方法。

對於iterator介面最初的設計裡面實際有三個抽象方法:

判斷是否有下乙個元素: public boolean hasnext();

取得當前元素: public e next();

刪除元素: public default void remove(); 此方法從jdk1.8開始變為default完整方法

public class testiterator 

system.out.println(str);}}

}結果:ni ta

iterator輸出有乙個特點:只能夠由前向後進行內容的迭代處理,而如果要想進行雙向迭代,那麼就必須依靠

iterator的子介面:listiterator來實現。首先來觀察一下此介面定義的方法:

取得上乙個元素:public e previous();

iterator介面物件是由collection介面支援的,但是listiterator是由list介面支援的,list介面提供有如下方法:

取得listiterator介面物件:public listiterator listiterator()

public class testlistiterator 

system.out.println("\n從後向前輸出: ") ;

while(iterator.hasprevious())

}}

如果要想實現由後向前的輸出,那麼應該首先進行從前向後的輸出,否則無法實現雙向。

定義:判斷是否有下乙個元素:public boolean hasmoreelements();

取得元素:public e nextelement();

要想取得這個介面的例項化物件,是不能依靠collection、list、set等介面的。只能夠依靠vector子類,因為enumeration最早的設計就是為vector服務的,在vector類中提供有乙個取得enumeration介面物件的方法:public enumeration elements();

public class testenumeration 

}}

public class testforeach 

}}

總結

一些操作類庫上依然只支援enumeration,而不支援iterator。看見集合輸出就用iterator

Java集合框架 三

01.集合 map概述 我感覺就是c 中的字典dictionary。map集合的基本特點 該集合儲存鍵值對,是一對一對往裡存,而且要保證鍵的唯一性。新增 put key,value putall 刪除 clear remove object obj 按鍵值刪除 判斷 containskey obje...

java集合框架(map集合)

map集合 該集合儲存鍵值對,一對一對往裡存,而且要保證鍵值得唯一性。一 基本方法 1.新增 put k key,v value 將指定的值與此對映中的指定鍵關聯 可選操作 putall map m 從指定對映中將所有對映關係複製到此對映中 可選操作 2.刪除 從此對映中移除所有對映關係 可選操作 ...

Java 集合框架 List 集合

arraylist,linkedlist,vector,stack是list的4個實現類。arraylist 是乙個陣列佇列,相當於動態陣列。它由陣列實現,隨機訪問效率高,隨機插入 隨機刪除效率低。linkedlist 是乙個雙向鍊錶。它也可以被當作堆疊 佇列或雙端佇列進行操作。linkedlist...