我有一个可空对象,并且如果该对象不为null
且不满足某些条件,我希望抛出异常。
我使用Optional
尝试以下方式:
Optional.ofNullable(nullableObject)
.filter(object -> "A".equals(object.getStatus()))
.orElseThrow(() -> new BusinessUncheckedException("exception message"));
当对象不为 null
时,它按照我的预期工作,但是当对象为 null
时,它也会抛出异常(我不想要这种情况)。
是否有使用 Optional
或其他方式而不使用 if object != null
的方法来解决这个问题?
object
永远不会为空。 - Andy TurnernullableObject
是null,则OP不想抛出异常。规则是它可以为null - 或者如果不为null,则其getStatus必须为A
。 - Thiyagu