java 如何检查元素计数并在流中间抛出异常?

utugiqy6  于 2023-10-14  发布在  Java
关注(0)|答案(1)|浏览(77)

我有一个元素流,我只想从流中获取一个元素,如果流中有多个元素并且根本没有元素集,我会抛出异常。有可能使用Stream吗?

public Entity getEntityByValue(String value) {
        return entityService.getEntitiesByValue(value)
                .stream
                // check here count of entities and throw a MultiMatchException if more than one entity is present
                .findAny()
                .orElseThrow(() -> throw NoEntitiesFoundException()); //no entities found
    }

我想使用.reduce(a,B -> throw MultiMatchException),如果第二个元素存在,但无法将其与其他代码合并组合,则抛出异常

e4yzc0pl

e4yzc0pl1#

你们关系很好

stream.reduce((i1, i2) -> { throw new RuntimeException(); })
      .orElseThrow(() -> new RuntimeException());

相关问题