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

生成布尔流

蔚承天
2023-03-14

如何创建布尔流。FALSE,比如说,长度为100?

我一直在挣扎的是:

  1. 最初我打算创建一个Boolean数组。FALSE。但是new Boolean[100]返回一个NULL数组。所以合理地,我考虑使用流API作为一个方便的Iterable和几乎(1)Iterable操作工具;
  2. 没有布尔no-params构造函数(2),因此我不能使用Stream.generate(),因为它接受供应商

我找到的是Stream.iterate(Boolean. FALSE, bool-

我发现还有一个选项(4)是IntStream。范围(0100)。mapToObj(idx-

尽管这些选项并不违反流API的管道概念,但有没有更简洁的方法来创建Boolean流。假


共有3个答案

傅琦
2023-03-14

当然你可以直接创建流

Stream.Builder<Boolean> builder = Stream.builder();
for( int i = 0; i < 100; i++ )
  builder.add( false );
Stream<Boolean> stream = builder.build();
夏烨霖
2023-03-14

您可以使用集合静态

Collections.nCopies (100, Boolean.FALSE).stream()...

请注意,nCopies返回的列表很小(它包含对数据对象的单个引用) 解决方案,无论所需大小。

姜振濂
2023-03-14

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

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

这还有一个优点(与使用构造函数相比),即它们将是相同的布尔实例,而不是100个不同但相等的实例。

 类似资料:
  • 我正在eclipse中使用protoc jar maven插件(3.11.4)从proto文件自动生成grpc存根。在生成代码时,我注意到proto中的my Bool数据类型字段(“proto3”)并不是生成的类的一部分。 不知道为什么只有bool数据类型字段会丢失,因为所有字符串数据类型都正确地出现在哪里。

  • 我正在尝试编译和部署neo4j-connector。 neo4j-connector-impl中的两个类(和)具有以下注释: 我可以想出一些方法(例如,添加一个方法),但这感觉不对:这段代码自一年前提交以来一直未变,所以为什么它不适合我呢?这里可能出了什么问题?

  • 我正在尝试对一个后端服务器进行负载测试,并将一些配置解析到一个标签对象中。我正在尝试生成< code>Label对象的笛卡尔乘积,这将是一个< code>Metric对象。 我有一个 方法添加 我试图以迭代/递归的方式做到这一点,但它变得非常复杂和混乱。我检查了是否有java8替代方案。如果我能够获得

  • 现在我正在尝试生成覆盖范围。 我需要什么才能生成伊斯坦布尔或其他地方的覆盖范围?

  • 我对收到以下消息的原因感到困惑: mysqli_num_rows()期望参数1mysqli_result,布尔值给定 这个问题与以前的查询不同,因为我的查询实际上执行正确(值确实输入了数据库)。所以,我希望MySQL返回一个结果集,而不是BOOLIAN。 下面是我的功能: 以下是错误的部分结果:

  • 我打算使用JAXB从xsd生成类,并使用xsd中的默认值。但当我将xs:boolean元素的默认值设置为“true”时。该值未设置,我得到空指针异常,因为布尔对象值尚未初始化为true。 我做错了什么?我们可以只为xs:string而不是xs:boolean设置默认值吗? 生成的xml文件是这样的: 当我尝试调用函数时: 或 我得到了空指针错误。虽然在我的代码中我已经处理了这个空值。 我只是好奇为