在Java中,有多少種方法可以檢索集合的元素?
您可以透過三種方式檢索集合物件的內容:
使用foreach迴圈
foreach迴圈或增強型for迴圈允許您按順序遍歷整個集合物件。
示例
import java.util.ArrayList;
public class RetrievingData {
public static void main(String[] args) {
ArrayList <String> list = new ArrayList<String>();
//Instantiating an ArrayList object
list.add("JavaFX");
list.add("Java");
list.add("WebGL");
list.add("OpenCV");
list.add("OpenNLP");
list.add("JOGL");
list.add("Hadoop");
list.add("HBase");
list.add("Flume");
list.add("Mahout");
list.add("Impala");
System.out.println("Contents of the array list: ");
for (String e: list)
System.out.println(e);
}
}輸出
Contents of the array list: JavaFX Java WebGL OpenCV OpenNLP JOGL Hadoop HBase Flume Mahout Impala
使用迭代器
Java提供Iterator和ListIterator類來檢索集合物件的元素。
這些介面的**hasNext()**方法如果集合物件有下一個元素則返回true,否則返回false。
Iterator和ListIterator的**next()**方法返回集合的下一個元素。
使用這兩個方法,您可以從迭代器物件中檢索內容。
類似地,ListIterator的**previous()**方法返回集合的上一個元素,hasPrevious()確定當前集合物件是否有上一個元素。
您可以使用Iterator和ListIterator()方法獲取集合的Iterator或ListIterator物件。
示例
import java.util.ArrayList;
import java.util.Iterator;
import java.util.ListIterator;
public class RetrievingData {
public static void main(String[] args) {
ArrayList <String> list = new ArrayList<String>();
//Instantiating an ArrayList object
list.add("JavaFX");
list.add("Java");
list.add("WebGL");
list.add("OpenCV");
list.add("OpenNLP");
list.add("JOGL");
list.add("Hadoop");
list.add("HBase");
list.add("Flume");
list.add("Mahout");
list.add("Impala");
System.out.println("Contents of the array list (first to last): ");
Iterator it = list.iterator();
while(it.hasNext()) {
System.out.println(it.next());
}
System.out.println("Contents of the array list (last to first): ");
ListIterator lit = list.listIterator();
while(lit.hasNext()) {
lit.next();
}
while(lit.hasPrevious()) {
System.out.println(lit.previous());
}
}
}輸出
Contents of the array list (first to last): JavaFX Java WebGL OpenCV OpenNLP JOGL Hadoop HBase Flume Mahout Impala Contents of the array list (last to first): Impala Mahout Flume HBase Hadoop JOGL OpenNLP OpenCV WebGL Java JavaFX
使用列舉
Enumeration類包含一個名為**hasMoreElements()**的方法,如果當前物件在當前位置之後包含更多元素,則返回true(否則返回false)。
如果您呼叫Enumeration類的nextElement()方法,則返回當前列舉物件中的下一個元素。
使用這兩個方法,您可以檢索集合物件的內容。
示例
import java.util.Enumeration;
import java.util.Vector;
public class EnumerationExample {
public static void main(String args[]) {
//instantiating a Vector
Vector<Integer> vec = new Vector<Integer>( );
//Populating the vector
vec.add(1254);
vec.add(4587);
vec.add(5211);
vec.add(4205);
vec.add(1124);
vec.add(8115);
//Retrieving the elements using the Enumeration
Enumeration<Integer> en = vec.elements();
while(en.hasMoreElements()) {
System.out.println(en.nextElement());
}
}
}輸出
1254 4587 5211 4205 1124 8115
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP