[問題] 六年經驗的前輩寫了出了.equals(null)

看板java作者 (再回頭已是百殘身)時間2月前 (), 編輯推噓3(3019)
留言22則, 13人參與, 1月前最新討論串1/1
今天上班時 在程式碼中看到一行code XXXX(物件變數名).equals(null) 看到的當下我第一個想法是 "這是哪個剛畢業的新人寫的code.." 結果看了一下git紀錄後發現 這竟然是一個有6年經驗的前輩寫的code 但因為我跟他不熟 所以我也沒問他為什麼會這樣寫 還是說其實他這樣寫是有原因的? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.12.31.183 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/java/M.1654531527.A.752.html

06/07 08:54, 2月前 , 1F
直接問啊。
06/07 08:54, 1F

06/07 09:17, 2月前 , 2F
一般是要用==?
06/07 09:17, 2F

06/07 10:35, 2月前 , 3F
git記錄不會是6年前吧?
06/07 10:35, 3F

06/07 12:22, 2月前 , 4F
我都用Objects.isNull(物件)
06/07 12:22, 4F

06/07 12:23, 2月前 , 5F
也還好吧,再強的高手總有一些沒學好的點。
06/07 12:23, 5F

06/07 17:33, 2月前 , 6F
這樣寫能有什麼原因? 結果不是false就是NPE耶
06/07 17:33, 6F

06/07 18:14, 2月前 , 7F
原本那個null也許是個變數,在多次copy-paste和refactor後
06/07 18:14, 7F

06/07 18:16, 2月前 , 8F
變成null吧....只能想到這種解釋
06/07 18:16, 8F

06/07 18:18, 2月前 , 9F
這寫法不能的點在變數真的是null就直接NPE了,不是新手老手
06/07 18:18, 9F

06/07 18:21, 2月前 , 10F
問題,是除了String不得不用外,怎麼會想用equals
06/07 18:21, 10F

06/08 01:50, 2月前 , 11F
你很無聊 說不定他以前寫的其他語言這樣用是ok的
06/08 01:50, 11F

06/08 01:51, 2月前 , 12F
只是這邊一下子忘了 就直接跟他說阿
06/08 01:51, 12F

06/08 10:45, 2月前 , 13F
沒幾個語言無聊到像java要用equals吧...大多是override ==
06/08 10:45, 13F

06/08 11:23, 2月前 , 14F
然後還被類公審
06/08 11:23, 14F

06/09 12:26, 2月前 , 15F
有必要這麼嚴格嗎?問一下本人不就好了,這種背後討論的行
06/09 12:26, 15F

06/09 12:26, 2月前 , 16F
為很差勁
06/09 12:26, 16F

06/09 17:15, 2月前 , 17F
還好你不是我同事
06/09 17:15, 17F

06/10 07:37, 2月前 , 18F
大哥 我們平常通靈夠多了 自己的靈自己通好嗎?
06/10 07:37, 18F

06/13 14:22, 1月前 , 19F
所以才要一起Code Review 阿~
06/13 14:22, 19F

06/15 14:51, 1月前 , 20F
阿 所以現在老人寫個code有點BUG 是不行嗎? 要被抓出來
06/15 14:51, 20F

06/15 14:51, 1月前 , 21F
你這麼有疑問 你去問他阿
06/15 14:51, 21F

06/15 14:52, 1月前 , 22F
如果你問我,我就會直接說 對我寫錯了 你就改掉吧
06/15 14:52, 22F
文章代碼(AID): #1YdYN7TI (java)
文章代碼(AID): #1YdYN7TI (java)