Java 判断空操作

2019-07-11 15:09:35 +08:00
 kuyuzhiqi

我的理解是 java 里面的对象都是用到的时候才判断是否为空吧,比如传递 String,传的时候可以为 Null,但使用的时候做判断吧

2911 次点击
所在节点    问与答
29 条回复
ipwx
2019-07-11 17:58:55 +08:00
@passerbytiny 呃,想了想也说不定。说不定哪天 JVM 的 JIT 特别牛逼,处理 Lambda 就和 inline 性能没区别了,那 Optional 就能用了。

至于 Optional.get() 抛不抛异常,别用它不就行了(当然这一点看上去没戏,Java 库的历史包袱太重)。还有序列化,当然 Optional 字段不存在就不输出啊。
richard1122
2019-07-11 18:09:41 +08:00
可以用 optional 或者用 jsr305 的 nullable, nonnull 等打标记

intellij 会在做分析
lululau
2019-07-11 18:15:02 +08:00
Optional 不就是在语言 /库层面把楼主说的准则给强制实施了吗。。。
passerbytiny
2019-07-11 18:21:52 +08:00
@ipwx 真得建议你,不光别用 Java,任何编程语言都别用了。哪天突然想起来,0 既不是正数也不是负数,所以凡是跟数学相关的东西也别用了。
ech0x
2019-07-11 20:23:59 +08:00
ech0x
2019-07-11 20:25:52 +08:00
我觉得任何一个稍微有上进心的人都会在同事这么提醒的时候去查一查原因,而不是张口就骂傻逼。
kuyuzhiqi
2019-07-11 21:02:24 +08:00
@ech0x 测试把问题给他了,他推给我,我看他没做空判断,提醒了下他,他说这么简单让我改下,我就说了我的想法,然后问后台的字段为 null 怎么办,他说不不用担心,肯定不会随便骂人的
charlie21
2019-07-12 02:23:08 +08:00
这时候又要感谢 Anders Hejlsberg 了
Blanke
2019-07-12 08:08:22 +08:00
还是 kotlin 好

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/582036

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX