※ 引述《qwerty0981 (qwerty@qwerty.tw)》之銘言:
: ※ 引述《j94223 (笨肌)》之銘言:
: : 大家好 我第一次在這邊發文 若排版不好看請多多包涵
: : 我剛學java不到兩個月
: : 我現在遇到了一個問題
: : 我想讓程式判斷我輸入的是字串(字元)或是數字
: : 若是字串(字元)則執行A運算
: : 若是數字則執行B運算
: : 請問這樣要怎麼寫出來?
: : 謝謝各位!
: 你必須定義結果域為何。
: 否則以numeric來說,此時又沒別的lib情況下,
: 我寧可try catch + BigDecimal,
: 多一點額外開銷,但結果會對。
:
: StackOverflow上有很多討論,可以先google之。
說真的,我還是提醒一下,try catch跟一般判斷式還是有差別的
而且就算沒有 lib,還是可以自己寫成一個method做判斷
我覺得這是 clean code 的問題... 跟你結果對不對沒啥關係
也許在其他case底下或許用try catch會比較恰當,但是這個case我真的認為用
try case 是非常不恰當的
if else 代表你在判斷一件事情...
try catch 代表你在處理某件錯誤...
說到 StackOverflow,提供一個討論串
http://stackoverflow.com/questions/8621762/java-if-vs-try-catch-overhead