不考虑现有框架的兼容性的前提下,get方法返回值改为Optional\u003cT\u003e会是一个好设计吗?

手动包装对象显然是会造成很可观的性能开销的
现在的主流代码分析工具(比如JetBrains那堆)很多都有Nullable/NonNullable标记功能,算是比较好的解决方案

■网友
并不是更好的设计。
1.包装一层有开销
2.这就跟CheckedException一样有时候很多余。很多情况下你遇到变量意外地为null以后并没有什么补救方法,只有抛异常。与其手动检查然后抛异常还不如自动抛异常。
【不考虑现有框架的兼容性的前提下,get方法返回值改为Optional\u003cT\u003e会是一个好设计吗?】 3.Java不像C#,不给塞那么多语法糖。强上Optional会让代码啰嗦很多。

■网友
第一 Nullable 是个完整的单词,A不需要大写。另外你说的是对的。不过考虑到性能 可以采用 @霍姚远 说的Nullable 注解,效果差不多只是依赖静态分析工具。不过还有一个很日狗的东西,就是 Optional 里面放个 null 。第二 我好像把我想说的都在第一里面说完了


    推荐阅读