Java 如何遍历列表
List接口扩展了Collection接口,表示存储一个元素序列的集合。列表的用户对在列表中插入元素的位置具有相当精确的控制。这些元素可以通过它们的索引进行访问和搜索。ArrayList是Java开发人员中最流行的List接口实现。
有多种方式可以遍历Java列表。以下是一些方法−
方法1
使用for/while循环遍历列表并按索引获取元素。
for(int i= 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
方法2
使用foreach循环来遍历元素列表。
for (Integer integer : list) {
System.out.print(integer + " ");
}
方法3
使用列表的迭代器遍历其元素。
Iterator<Integer> iterator = list.iterator();
while(iterator.hasNext()) {
System.out.print(iterator.next() + " ");
}
方法4
使用listIterator从列表中迭代遍历其元素。
Iterator<Integer> iterator = list.listIterator();
while(iterator.hasNext()) {
System.out.print(iterator.next() + " ");
}
方法5
使用列表的forEach函数来遍历其元素。
list.forEach(i -> {System.out.print(i + " ");});
方法6
使用列表流的forEach方法来遍历其元素。
list.stream().forEach(i -> {System.out.print(i + " ");});
现在让我们探索一下以上在下面给出的示例中遍历列表的方法。
示例1
以下是一个示例,展示了使用循环和迭代器方法迭代列表的方法。
package com.tutorialspoint;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
public class CollectionsDemo {
public static void main(String[] args) {
List<Integer> list = new ArrayList<>(Arrays.asList(1,2,3,4,5));
for(int i= 0; i< list.size(); i++) {
System.out.print(list.get(i) + " ");
}
System.out.println();
for (Integer integer : list) {
System.out.print(integer + " ");
}
Iterator<Integer> iterator = list.iterator();
System.out.println();
while(iterator.hasNext()) {
System.out.print(iterator.next() + " ");
}
}
}
输出
这将产生以下结果−
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
示例2
以下是展示迭代一个列表的各种方法的示例-
package com.tutorialspoint;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
public class CollectionsDemo {
public static void main(String[] args) {
List<Integer> list = new ArrayList<>(Arrays.asList(1,2,3,4,5));
Iterator<Integer> iterator1 = list.listIterator();
while(iterator1.hasNext()) {
System.out.print(iterator1.next() + " ");
}
System.out.println();
list.forEach(i -> {System.out.print(i + " ");});
System.out.println();
list.stream().forEach(i -> {System.out.print(i + " ");});
}
}
输出
这将产生以下结果−
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5