0
A
回答
1
第二個版本可能會丟NPE。 (考慮情況list
是null
。)
但更重要的問題是,第二個版本不會輸出列表的最後一個元素。永遠。
你應該能夠通過用手和鉛筆「手動執行」代碼來驗證這一點。我建議你這樣做,因爲它可以幫助你理解實際發生的事情。
(或者,你可以編譯和運行兩個版本的一些例子名單,雖然這會給你少的見解。)
+0
是的,我做了手工計數版本。 –
0
第一種可能是你想要的。您還應該確保data
字段不爲空。
第二個問題的一個潛在問題是,如果list
爲空,則在while循環條件中嘗試獲得current.next
將拋出空指針異常。
相關問題
- 1. 哪一個更重要:寫正確的代碼還是寫正確的代碼?
- 2. 清潔代碼哪個版本正確?
- 3. 這兩個代碼片段中哪一個更好
- 4. Python:哪個代碼更好?
- 5. 這兩個代碼在內存基礎上哪個更好?
- 6. 在兩個代碼中構建兩個代碼到jquery中的一個代碼
- 7. 實體框架如何正確更新一個實體代碼?
- 8. 以下兩個代碼片段中的哪一個更快,爲什麼?
- 9. 代碼覆蓋率 - 哪個代碼覆蓋哪個代碼?
- 10. 這兩個IF塊中哪一個更好的編碼實踐?
- 11. 哪個更正確的頁面佈局?
- 12. XML架構 - 哪個更正確?
- 13. 哪個內聯彙編代碼對於rdtscp是正確的?
- 14. 兩個谷歌分析代碼 - 兩個都沒有正確收集
- 15. 根據性能,哪個代碼更好?
- 16. 哪個代碼更好?爲什麼?
- 17. 以下哪個代碼更好?
- 18. 迭代比線性代碼慢嗎?哪一個更好?
- 19. Grails:兩個站點,一個代碼庫
- 20. 哪一個關於bools.xml是正確的?
- 21. Java MD5哪一個是正確的?
- 22. 其中哪一個是正確的?
- 23. Xhtml寫URL,哪一個是正確的?
- 24. SMTP,哪一個是正確答案?
- 25. 狀態代碼200或304?哪一個是正確的? Amazon CloudFront with S3
- 26. 更換一個Java代碼
- 27. 哪個是比較PHP中兩個日期的正確方法?
- 28. 這個C++代碼是否正確?
- 29. 這個Codeigniter代碼是否正確?
- 30. 這個Scala代碼是否正確?
兩者都可能會拋出NPE – Brian
LinkedNode的代碼是什麼? – Kevin
*我認爲第二個會導致異常發生*:嘗試一下,你會看到。 –