gpt4 book ai didi

Java循环表达式打印列表

转载 作者:行者123 更新时间:2023-12-01 16:43:20 25 4
gpt4 key购买 nike

你能告诉我是否还有其他 Java 程序员必须能够读取的循环表达式?

final List<String> names = Arrays.asList("Alice", "Bob", "Carol", "Dave", "Eve");

System.out.println("Pattern 1:");
for (int i = 0; i < names.size(); i++) {
System.out.println(names.get(i));
}

System.out.println("Pattern 2:");
Iterator<String> iterator = names.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}

System.out.println("Pattern 3:");
for (String name : names) {
System.out.println(name);
}

System.out.println("Pattern 4:");
names.forEach(new Consumer<String>() {
@Override
public void accept(String name) {
System.out.println(name);
}
});

System.out.println("Pattern 5:");
names.forEach((String name) -> {System.out.println(name);});

System.out.println("Pattern 6:");
names.forEach((String name) -> System.out.println(name));

System.out.println("Pattern 7:");
names.forEach(name -> System.out.println(name));

System.out.println("Pattern 8:");
names.forEach(System.out::println);

System.out.println("Pattern 9:");
names.stream().forEach(System.out::println);

最佳答案

我们还有,

names.stream().forEachOrdered(System.out::println);
应使用

forEachOrdered 而不是 forEach,因为 forEach 的行为是不确定的,但 forEachOrdered如果您已在流中定义了顺序,则按照流中定义的顺序执行操作

此外,您还有parallelStream,它可以打印列表,而不管顺序如何,

names.parallelStream().forEach(System.out::println);

或者,您也可以在打印列表后删除第一个元素,您也可以对迭代器执行相同的操作,也使用 iterator.previous 方法。

while(!names.empty()){
SOP(names.get(0));
names = names.subList(1,names.size());
}

关于Java循环表达式打印列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58297911/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com