iterator()
方法的语法是
arraylist.iterator()
iterator() 参数
iterator()
方法不接受任何参数。
iterator() 返回值
注意:该方法返回的迭代器存储在接口 Iterator
类型的变量中。
示例 1:Java ArrayList iterator()
import java.util.ArrayList;
import java.util.Iterator;
class Main {
public static void main(String[] args){
ArrayList<String> languages = new ArrayList<>();
// Add elements in the array list
languages.add("Java");
languages.add("Python");
languages.add("JavaScript");
languages.add("Swift");
// Create a variable of Iterator
// store the iterator returned by iterator()
Iterator<String> iterate = languages.iterator();
System.out.print("ArrayList: ");
// loop through ArrayList till it has all elements
// Use methods of Iterator to access elements
while(iterate.hasNext()){
System.out.print(iterate.next());
System.out.print(", ");
}
}
}
输出
ArrayList: Java, Python, JavaScript, Swift,
在上面的示例中,我们创建了一个名为 languages 的 ArrayList。请注意这一行:
Iterator<String> iterate = languages.iterator();
在这里,我们创建了一个名为 iterate 的 Iterator
接口变量。该变量存储了 iterator()
方法返回的迭代器。
使用 iterate,我们可以访问 arraylist 的元素。
- hasNext:如果 arraylist 中有下一个元素,则返回 true
- next():返回 arraylist 中的下一个元素
注意:我们使用了 ArrayList add() 方法向 arraylist 中插入元素。
示例 2:使用 iterator() 获取 ArrayList 中每个元素的索引
import java.util.ArrayList;
import java.util.Iterator;
class Main {
public static void main(String[] args){
ArrayList<String> languages = new ArrayList<>();
// Add elements in the array list
languages.add("Java");
languages.add("Python");
languages.add("JavaScript");
languages.add("Swift");
// Create a variable of Iterator
// store the iterator returned by iterator()
Iterator<String> iterate = languages.iterator();
System.out.println("Element: Index");
// loop through ArrayList till it has all elements
// Use methods of Iterator to access elements
while(iterate.hasNext()){
// access element
String element = iterate.next();
System.out.print(element + ": ");
// access index of each element
System.out.println(languages.indexOf(element));
}
}
}
输出
Element: Index Java: 0 Python: 1 JavaScript: 2 Swift: 3
注意:我们使用了 Java ArrayList indexOf() 方法来访问元素的索引号。
ArrayList
还提供了一个 listIterator()
方法,用于仅通过列表进行迭代。要了解更多,请访问 Java ListIterator。