作者a88241050 (再回头已是百残身)
看板java
标题[问题] 六年经验的前辈写了出了.equals(null)
时间Tue Jun 7 00:05:25 2022
今天上班时
在程式码中看到一行code
XXXX(物件变数名).equals(null)
看到的当下我第一个想法是
"这是哪个刚毕业的新人写的code.."
结果看了一下git纪录後发现
这竟然是一个有6年经验的前辈写的code
但因为我跟他不熟 所以我也没问他为什麽会这样写
还是说其实他这样写是有原因的?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 101.12.31.183 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1654531527.A.752.html
1F:→ qrtt1: 直接问啊。 06/07 08:54
2F:推 ntpuisbest: 一般是要用==? 06/07 09:17
3F:推 kentyeh: git记录不会是6年前吧? 06/07 10:35
4F:→ sCHb68: 我都用Objects.isNull(物件) 06/07 12:22
5F:→ sCHb68: 也还好吧,再强的高手总有一些没学好的点。 06/07 12:23
6F:→ gasbomb: 这样写能有什麽原因? 结果不是false就是NPE耶 06/07 17:33
7F:→ ssccg: 原本那个null也许是个变数,在多次copy-paste和refactor後 06/07 18:14
8F:→ ssccg: 变成null吧....只能想到这种解释 06/07 18:16
9F:→ ssccg: 这写法不能的点在变数真的是null就直接NPE了,不是新手老手 06/07 18:18
10F:→ ssccg: 问题,是除了String不得不用外,怎麽会想用equals 06/07 18:21
11F:→ Cavalier: 你很无聊 说不定他以前写的其他语言这样用是ok的 06/08 01:50
12F:→ Cavalier: 只是这边一下子忘了 就直接跟他说阿 06/08 01:51
13F:→ ssccg: 没几个语言无聊到像java要用equals吧...大多是override == 06/08 10:45
14F:→ hisashi: 然後还被类公审 06/08 11:23
15F:→ Isaea: 有必要这麽严格吗?问一下本人不就好了,这种背後讨论的行 06/09 12:26
16F:→ Isaea: 为很差劲 06/09 12:26
17F:→ alihue: 还好你不是我同事 06/09 17:15
18F:→ jej: 大哥 我们平常通灵够多了 自己的灵自己通好吗? 06/10 07:37
19F:推 darkroad: 所以才要一起Code Review 阿~ 06/13 14:22
20F:→ pupuliao: 阿 所以现在老人写个code有点BUG 是不行吗? 要被抓出来 06/15 14:51
21F:→ pupuliao: 你这麽有疑问 你去问他阿 06/15 14:51
22F:→ pupuliao: 如果你问我,我就会直接说 对我写错了 你就改掉吧 06/15 14:52
23F:推 td770715: 你这跟闻到血腥味的鲨鱼有什麽差别?不就是为了公审他 06/28 15:51
24F:→ td770715: 而上来问吗 06/28 15:51
25F:推 fr373969: 开个pr 改成isNull() 阿 06/30 07:09
26F:→ Dinjang: 也许方法被重写了 07/06 21:24
27F:→ Killercat: 通常是直接用replace来refactor造成的 07/17 21:36
28F:→ Killercat: 另外有问题就问本人,有必要搞成这样吗 07/17 21:36
29F:推 zzshcool: 觉得怪怪就帮他修掉,举手之劳,或是跟前辈讨论 07/24 15:38
30F:推 zanyking: 这就跟Java不熟,也许六年前他还是菜鸟 09/15 09:24
31F:推 Morris1028: 多半是重构造成的 bad smell 10/31 08:46