我有以下代码块,如果找不到用户,它会抛出异常。另一方面,除了抛出异常之外,我还想在找不到用户时调用一个方法。那么,我可以通过添加另一个
.orElseThrow
等来调用它,还是应该在标准 if 条件下转换此块?
final User user = userRepository.findByUsername(request.getUsername())
.orElseThrow(InvalidCredentialsException::new);
只要喜欢就好:
final User user = userRepository.findByUsername(request.getUsername())
.orElseThrow(() -> {
System.out.println("multiple lines");
return new InvalidCredentialsException();
});