Java 8 - fill ArrayList(Java 8 - 填充 ArrayList)
问题描述
有没有更好的方法来填充像这样的 ArrayList(我在 Java 7 中已经这样做了):
Is there a better way to fill an ArrayList like this (I have done it like this in Java 7):
List<ScheduleIntervalContainer> scheduleIntervalContainers = new ArrayList<>();
scheduleIntervalContainers.add(scheduleIntervalContainer);
推荐答案
为了填充一个List,可以使用Streamhttps://docs.oracle.com/javase/8/docs/api/java/util/stream/Stream.html#generate-java.util.function.Supplier-">Stream.generate(s) 然后使用 limit(maxSize).
To fill a List, it is possible to generate an infinite Stream using Stream.generate(s) and then limit the number of results with limit(maxSize).
例如,要填充 10 个新 ScheduleIntervalContainer 对象的 List:
For example, to fill a List of 10 new ScheduleIntervalContainer objects:
List<ScheduleIntervalContainer> scheduleIntervalContainers =
Stream.generate(ScheduleIntervalContainer::new).limit(10).collect(toList());
generate 方法采用 Supplier:在这种情况下,supplier 是每次创建 ScheduleIntervalContainer 的新实例的方法引用.
The generate method takes a Supplier: in this case, the supplier is a method reference creating new instance of ScheduleIntervalContainer each time.
这篇关于Java 8 - 填充 ArrayList的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Java 8 - 填充 ArrayList
基础教程推荐
- 验证是否调用了所有 getter 方法 2022-01-01
- Java 实例变量在两个语句中声明和初始化 2022-01-01
- 不推荐使用 Api 注释的描述 2022-01-01
- 多个组件的复杂布局 2022-01-01
- Java Swing计时器未清除 2022-01-01
- 如何在 Spring @Value 注解中正确指定默认值? 2022-01-01
- 大摇大摆的枚举 2022-01-01
- 在 Java 中创建日期的正确方法是什么? 2022-01-01
- 如何在 JFrame 中覆盖 windowsClosing 事件 2022-01-01
- 从 python 访问 JVM 2022-01-01
