当前位置: 首页 > 知识库问答 >
问题:

将生成的流保存到数组列表中 [重复]

楚志强
2023-03-14

我应该做的是通过stream.generate.创建一个随机数数组列表下面的代码是我试图将其保存到数组列表中的尝试,但它的类型是“对象”。我想我必须先将其映射到int,但我不知道怎么做。代码现在不起作用。

public ArrayList<Integer> createRandomList(ArrayList<Integer> list, int amount) {
     ArrayList<Integer> a = Arrays.asList(Stream.generate(new Supplier<Integer>() {
                    @Override
                    public Integer get() {
                        Random rnd = new Random();
                        return rnd.nextInt(100000);
                    }
                }).limit(amount).mapToInt.toArray());
}

共有2个答案

艾泉
2023-03-14

您可以使用收集器:

return Stream.generate (() -> new Random().nextInt(100000))
             .limit(amount)
             .collect (Collectors.toList());

这将产生一个列表

但是,创建单个随机实例更有意义:

final Random rnd = new Random();
return Stream.generate (() -> rnd.nextInt(100000))
             .limit(amount)
             .collect (Collectors.toList());

万嘉石
2023-03-14

您可以使用< code > ints(...),使用< code>boxed()将它们装箱,并使用收集器存储结果:

return new Random().ints(amount, 0, 100000)
                   .boxed()
                   .collect(Collectors.toCollection(ArrayList::new));
 类似资料:
  • 我正在创建一个项目,我将让某人从20个类别中最多选择3个类别。因为它总是最多有3个类别,所以在数据库中再创建3列(category\u 1、category\u 2、category\u 3)对我来说并不算多。 我想象在插入的时候,不是保存在3个不同的列中,而是将数组保存到一个“categories”列中。 我的问题是,在获得信息的那一刻。如果我这样做了,比如说搜索每个有一个特定类别的记录,那么什

  • 我正在研究一个函数,它使用递归调用将给定的输入分解为面值。 在每个步骤中,它都会递归为两个变量: 继续当前的硬币:将其添加到列表中并递归。 切换到下一个硬币:递增硬币pos和递归。 除了在剩余=0时打印列表中捕获的面额组合之外,我还打算捕获该列表的值并从函数返回它。 这是代码: 输出:[5,5,3]

  • 我有一个按值排序的元组列表。它们以的形式出现,其中count是每个唯一名称的出现次数。 我想把这个列表转换成CSV,其中每个名称都是列标题,每个值都是单行的列值。 有什么建议吗?谢谢

  • 我想使用R脚本在数据库中的现有表中输入一个数据帧,我希望数据库中的表有一个顺序主键。我的问题是RODBC似乎不允许主键约束。 下面是创建我想要的表的SQL: 和一个带有R代码的测试:

  • 问题内容: 我希望重构一些代码中使用流的方式。第一个例子是我目前的做法。第二个例子是我试图使它看起来像什么。 看起来像这样吗?如果是这样,我该如何做呢? 问题答案: 用途:

  • 在有趣的功能中,当我将列表添加到其他列表时,它正在添加空列表,我可以找到原因有人可以帮助我这个程序是关于查找给定数组的不同组合