[问题] 六年经验的前辈写了出了.equals(null)

楼主: a88241050 (再回頭已是百殘身)   2022-06-07 00:05:25
今天上班时
在程式码中看到一行code
XXXX(物件变量名).equals(null)
看到的当下我第一个想法是
"这是哪个刚毕业的新人写的code.."
结果看了一下git纪录后发现
这竟然是一个有6年经验的前辈写的code
但因为我跟他不熟 所以我也没问他为什么会这样写
还是说其实他这样写是有原因的?
作者: qrtt1 (有些事,有时候。。。)   2022-06-07 08:54:00
直接问啊。
作者: ntpuisbest (阿龙)   2022-06-07 09:17:00
一般是要用==?
作者: kentyeh (kent)   2022-06-07 10:35:00
git记录不会是6年前吧?
作者: sCHb68 (sCHb68)   2022-06-07 12:22:00
我都用Objects.isNull(物件)也还好吧,再强的高手总有一些没学好的点。
作者: gasbomb (虚空雷神兽)   2022-06-07 17:33:00
这样写能有什么原因? 结果不是false就是NPE耶
作者: ssccg (23)   2022-06-07 18:14:00
原本那个null也许是个变量,在多次copy-paste和refactor后变成null吧....只能想到这种解释这写法不能的点在变量真的是null就直接NPE了,不是新手老手问题,是除了String不得不用外,怎么会想用equals
作者: Cavalier (Cavalier)   2022-06-08 01:50:00
你很无聊 说不定他以前写的其他语言这样用是ok的只是这边一下子忘了 就直接跟他说阿
作者: ssccg (23)   2022-06-08 10:45:00
没几个语言无聊到像java要用equals吧...大多是override ==
作者: hisashi   2022-06-08 11:23:00
然后还被类公审
作者: Isaea (Isaea)   2022-06-09 12:26:00
有必要这么严格吗?问一下本人不就好了,这种背后讨论的行为很差劲
作者: alihue (wanda wanda)   2022-06-09 17:15:00
还好你不是我同事
作者: jej (晃奶大馬桶)   2022-06-10 07:37:00
大哥 我们平常通灵够多了 自己的灵自己通好吗?
作者: darkroad (黑路)   2022-06-13 14:22:00
所以才要一起Code Review 阿~
作者: pupuliao (pupu)   2022-06-15 14:51:00
阿 所以现在老人写个code有点BUG 是不行吗? 要被抓出来你这么有疑问 你去问他阿如果你问我,我就会直接说 对我写错了 你就改掉吧
作者: td770715 (Rex)   2022-06-28 15:51:00
你这跟闻到血腥味的鲨鱼有什么差别?不就是为了公审他而上来问吗
作者: fr373969 (Brian)   2022-06-30 07:09:00
开个pr 改成isNull() 阿
作者: Dinjang (DD)   2022-07-06 21:24:00
也许方法被重写了
作者: Killercat (杀人猫™)   2022-07-17 21:36:00
通常是直接用replace来refactor造成的另外有问题就问本人,有必要搞成这样吗
作者: zzshcool (台湾人)   2022-07-24 15:38:00
觉得怪怪就帮他修掉,举手之劳,或是跟前辈讨论
作者: zanyking (最后的六年级生)   2022-09-15 09:24:00
这就跟Java不熟,也许六年前他还是菜鸟
作者: Morris1028 (某 M)   2022-10-31 08:46:00
多半是重构造成的 bad smell

Links booklink

Contact Us: admin [ a t ] ucptt.com