为什么java.util.Optional.ofNullable需要@NonNullable?

问题描述

试图绕过为什么仅出于包装null的实用工具类需要AuthorMap参数。下面的示例在Eclipse中产生意外(对我而言)的null类型不匹配错误

空类型不匹配(类型注释):必需的'@NonNull IoSession' 但是此表达式的类型为'@Nullable IoSession'

我不会以这种方式编写代码,但是我陷入了我要为之贡献的第三方的编码标准与我要为其接口提供接口的第四方库的现实之间实施,所以我一直在努力使每个人都开心,同时又使一切正常。

鉴于特定的回调方法签名,在产生最少的编译器警告时(应用抑制之前),正确处理实现的最佳方法是什么。在尝试@NonNullable之前,我只是在做简单的null检查,但是如您所知,编译器仍会警告

可能的空指针访问:此表达式的类型为'@Nullable'

尽管进行了空检查,但另一个第三方编码标准是没有编译器错误或警告,同时使用了尽可能少的抑制来实现这一目标。

java.util.Optional

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)