qum*_*uma 6 java lambda java-8 java-stream
有没有更好的方法来填充ArrayList这样的(我在Java 7中这样做了):
List<ScheduleIntervalContainer> scheduleIntervalContainers = new ArrayList<>();
scheduleIntervalContainers.add(scheduleIntervalContainer);
Run Code Online (Sandbox Code Playgroud)
Tun*_*aki 12
要填充a List,可以生成无限Stream使用Stream.generate(s),然后限制结果数量limit(maxSize).
例如,要填充List10个新ScheduleIntervalContainer对象:
List<ScheduleIntervalContainer> scheduleIntervalContainers =
Stream.generate(ScheduleIntervalContainer::new).limit(10).collect(toList());
Run Code Online (Sandbox Code Playgroud)
该generate方法采用Supplier:在这种情况下,供应商是ScheduleIntervalContainer每次创建新实例的方法参考.