2
토큰 목록이 있습니다.이 목록에는 활성 상태의이 하나만 포함 된 요소 만 포함되어야합니다. 상태 equals가 활성 인 요소가 하나도 없으면 예외를 throw해야합니다.요소 수를 계산하고 Java에서 먼저 찾는 방법 8
나는 람다 expresssions에 이것을 쓰고 싶어이 내 코드입니다 : 내가 두 번 같은 예외를 발생
List<Token> listResult = tokenRepository.findByReference(tokenRefId);
if (listResult == null || listResult.isEmpty()) {
throw new IllegalStateException(Messages.TOKEN_NOT_FOUND);
}
if (listResult.stream().filter(t -> t.getStatus().equals(TokenStatus.ACTIVE.code())).count() != 1) {
throw new IllegalStateException(Messages.ONE_TOKEN_MUST_BE_ACTIVATED);
}
Token token = listResult.stream().filter(t -> t.getStatus().equals(TokenStatus.ACTIVE.code()))
.findFirst().orElseThrow(() -> new IllegalStateException(Messages.ONE_TOKEN_MUST_BE_ACTIVATED));
참고. 활성 상태의 요소가 하나 뿐이며 동일한 람다 식으로 가져올 수 있는지 어떻게 확인할 수 있습니까?