Re: [問題] 關於例外檢查的問題
※ 引述《swatches (松鼠)》之銘言:
: if( type != null && type.equals("haha") )
: output += type;
: else
: output += "something wrong"
: 如果是用exception:
: try{
: if( type.equals("haha") )
: output += type;
: } catch (java.lang.NullPointerException e){
: output += "something wrong"
: }
: 這兩者雖然只有針對null pointer這邊做舉例
: 可是其實我還是有遇到其他更複雜的狀況
: 個人的想法是
: 如果我用條件式判斷時,可以掌握所有的情況,但是比較複雜
: 如果我用例外處理時,程式碼相對簡潔,但是不能掌握所有的判斷情況(?)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
我完全不知道你要問什麼...... Orz
(可以直接用版規 4.2 嗎? [被毆飛])
我還覺得在這個 case 上用 Exception 比較複雜...... Orz
再繼續討論之前,請先確認一下你的程式碼
這兩段程式碼是不是等意的?
在用了 Exception 的程式碼當中,要做 output+=type 要全部滿足下列條件
→type 不是 null
→type 的值是 haha
→output 不是 null(雖然如果 output 是 null 會炸到飛天)
而要作 output+="somthing worng" 要滿足下列條件其一
→type 是 null
→output 是 null(其實還是炸 exception...)
更重要的是,也有可能 output 根本沒改變,只要全部滿足下列條件
→type 不是 null
→type 的值不是 haha
在用 if-else 的程式碼當中,就只有兩個結果
要嘛 output+=type,要嘛 output+="something wrong"
條件就是全部滿足下列條件
→type 不是 null
→type 的值是 haha
所以,我覺得你真要討論該用哪一個、哪一個好讀 or 不好讀之類
那先寫出完全等意的程式碼
或許才能判斷 or 在寫出來的過程當中就能發現答案
--
錢鍾書: 說出來的話
http://www.psmonkey.org
比不上不說出來的話
Java 版 cookcomic 版
只影射著說不出來的話
and more......
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.25.18.7
→
11/16 11:04, , 1F
11/16 11:04, 1F
討論串 (同標題文章)