【发布时间】:2020-08-02 02:38:52
【问题描述】:
假设我有一个Optional<Exception> 并想将其转换为Optional<Throwable>。有没有更漂亮的方法来做到这一点,而不是:
Optional<Exception> optionalException = Optional.of(new Exception());
Optional<Throwable> optionalThrowable = (Optional<Throwable>) (Optional<? extends Throwable>) optionalException;
此解决方案在 IntelliJ 中生成 lint 警告。
Unchecked cast: 'java.util.Optional<capture<? extends java.lang.Throwable>>' to 'java.util.Optional<java.lang.Throwable>'
【问题讨论】:
-
"SupressWarnings("unchecked") 在这里可能比
.map()更好。stackoverflow.com/questions/1129795/…