将流转换为单声道

问题描述 投票:0回答:1

如何使用流限制从流中恢复 Mono?

  1. 需要从流中获取列表并检查元素大小
var personsResult = persons.getSomething().stream().limit(1).toList();
  1. 我想添加列表到
Mono.just(personsResult) 

我在尝试

  Mono.just(persons.getSomething().stream().limit(1).toList();

这是错误的。

java java-stream project-reactor
1个回答
0
投票

假设

getSomething()
可以返回可流式传输的对象,
limit(1)
将仅传输流中的第一个值。要检索它,您可以执行以下操作:

var personsResult = persons.getSomething().stream().limit(1).findAny().get();

如果流为空,您将收到异常。要返回空流的默认值,您可以这样做。

var personsResult = list.stream().limit(1).findAny().orElse(defaultValue);

其中 defaultValue 的类型为

var

© www.soinside.com 2019 - 2024. All rights reserved.