Java 8 - 填充 ArrayList [英] Java 8 - fill ArrayList

查看:33
本文介绍了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,可以使用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的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆