javaListTraverse
最前面
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class ListTraverse {
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add("piccolo");
list.add("dave");
list.add("mia");
list.add("maybe");
// 1.普通for循环遍历
// 性能最佳
System.out.println("第1种遍历方式:普通for循环");
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
System.out.println("-------------------------------------");
// 2.迭代器遍历
// 需要注意的是Iterator对象的remove方法是迭代过程中删除元素的唯一方法
System.out.println("\n第2种遍历方式:迭代器");
Iterator<String> iterator = list.iterator();
while (iterator.hasNext()) {
String str = iterator.next();
System.out.println(str);
}
System.out.println("-------------------------------------");
// 3.增强for循环遍历
// 内部为迭代器
System.out.println("\n第3种遍历方式:增强for循环");
for (String item : list) {
System.out.println(item);
}
System.out.println("-------------------------------------");
// 4.Lambda 表达式遍历(JDK 1.8)
// forEach内部为增强for
System.out.println("\n第4种遍历方式:Lambda 表达式遍历");
list.forEach(one -> {
System.out.println(one);
});
System.out.println("-------------------------------------");
// 4.Lambda 表达式遍历(JDK 1.8)
System.out.println("\n第4种遍历方式:Lambda 表达式遍历");
list.forEach(System.out::println);
System.out.println("-------------------------------------");
// 4.Lambda 表达式遍历(JDK 1.8)
// 支持多线程并行
System.out.println("\n第4种遍历方式:Lambda 表达式遍历");
list.stream().forEach(System.out::println);
System.out.println("-------------------------------------");
}
}