准备工作:使用静态块初始化List数据
private static List<Integer> list;
//静态块 ==> 初始化ArrayList
static {
list = new ArrayList<>(10);
for(int index = 1; index <= 10; index++) {
list.add(index);
}
}
1.普通while循环遍历
public static void test1() {
System.out.println("第一种方式:普通while循环遍历List集合");
int index = 0;
while(index < list.size()) {
System.out.println(list.get(index));
index++;
}
}
2.普通do...while循环遍历
public static void test2() {
System.out.println("第二种方式:普通do...while循环遍历List集合");
int index = 0;
do{
System.out.println(list.get(index));
index++;
}while(index < list.size());
}
3.普通for循环遍历
public static void test3() {
System.out.println("第三种方式:普通for循环遍历List集合");
for (int index = 0; index < list.size(); index++) {
System.out.println(list.get(index));
}
}
4.增强for循环遍历
public static void test4() {
System.out.println("第四种方式:增强for循环遍历List集合");
for (int element : list) {
System.out.println(element);
}
}
5.Iterator迭代器循环遍历
public static void test5() {
System.out.println("第五种方式:Iterator迭代器循环遍历List集合");
Iterator<Integer> it = list.iterator();
while(it.hasNext()) {
System.out.println(it.next());
}
}
6.ListIterator迭代器循环遍历
public static void test6() {
System.out.println("第六种方式:ListIterator迭代器循环遍历List集合");
Iterator<Integer> it = list.listIterator();
while(it.hasNext()) {
System.out.println(it.next());
}
}
7.Lambda表达式遍历(jdk1.8+)
public static void test7() {
System.out.println("第七种方式:Lambda表达式遍历List集合");
list.forEach(element -> System.out.println(element));
list.forEach(System.out::println);//方法参考引用
}
8.Stream流 + Lambda表达式(jdk1.8+)
public static void test8() {
System.out.println("第八种方式:Stream流 + Lambda表达式遍历List集合");
//单线程顺序流 ==> 先过滤后遍历
list.stream().filter(element -> element % 2 == 0).forEach(System.out::println);
//多线程并行流 ==> 先过滤后遍历
list.parallelStream().filter(element -> element % 2 == 0).forEach(System.out::println);
}
至此搞定,java循环遍历List集合就这么简单,小伙伴们不妨试试。