gpt4 book ai didi

java - 生成 boolean 流

转载 作者:搜寻专家 更新时间:2023-11-01 01:05:53 24 4
gpt4 key购买 nike

如何创建 Boolean.FALSE 的流,比方说,长度为 100?

我遇到的问题是:

  1. 最初我打算创建一个 Boolean.FALSE 的数组.但是new Boolean[100]返回 NULL 的数组.所以合理地我考虑使用流 API 作为一个方便的 Iterable几乎 ( 1 ) Iterable操纵工具;
  2. 没有 Boolean无参数构造函数( 2 ),因此我不能使用 Stream.generate() , 因为它接受 Supplier<T> (3)。

我找到的是 Stream.iterate(Boolean.FALSE, bool -> Boolean.FALSE).limit(100);给出了我想要的,但恕我直言,这似乎不是一个非常优雅的解决方案。

还有一个选项,我发现 ( 4 ) 是 IntStream.range(0, 100).mapToObj(idx -> Boolean.FALSE); ,这在我看来更奇怪。

尽管这些选项不违反流 API 的管道概念,但是否有更简洁的方法来创建 Boolean.FALSE 的流?

最佳答案

即使 Boolean 没有无参数构造函数,您仍然可以通过 lambda 使用 Stream.generate:

Stream.generate(() -> Boolean.FALSE).limit(100)

这也有一个优点(与使用构造函数相比)那些将是相同 Boolean 实例,而不是 100 个不同但相等的实例。

关于java - 生成 boolean 流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46767324/

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