Re: [問題] 輸入分辨字串與數字

看板java作者 (Mr. Pan)時間9年前 (2014/11/09 11:31), 編輯推噓1(103)
留言4則, 3人參與, 最新討論串3/6 (看更多)
※ 引述《j94223 (笨肌)》之銘言: : 大家好 我第一次在這邊發文 若排版不好看請多多包涵 : 我剛學java不到兩個月 : 我現在遇到了一個問題 : 我想讓程式判斷我輸入的是字串(字元)或是數字 : 若是字串(字元)則執行A運算 : 若是數字則執行B運算 : 請問這樣要怎麼寫出來? : 謝謝各位! 其實問題應該不是在輸入的是文字還是數字,假設你輸入的是 1234 根據讀取的方式不同,得到的結果就不同,舉例: 用 scanner.next() , 得到字串 "1234" 用 scanner.nextInt() , 得到數字 1234 所以我想重點應該放在,判斷輸入的是否為數字吧? 如果輸入 1234 就當成數字處理,如果輸入 12A4 當成字串處理 如果要是要這樣做的話,可以直接先用 scanner.next 取得字串 再來判斷是否為數值。 不建議,但很懶人的方法: String str=scanner.next(); try{ MethodForInt(Integer.parseInt(str)); }catch(NumberFormatException e){ MethodForString(str); } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.139.48.69 ※ 文章網址: http://www.ptt.cc/bbs/java/M.1415503908.A.D84.html

11/09 11:45, , 1F
謝謝 我決定用你那個不建議的做法XD
11/09 11:45, 1F

11/09 13:42, , 2F
最好不要把try catch當條件判斷用
11/09 13:42, 2F

11/09 13:44, , 3F
建意用yyc1217的方式配合if else方法實作
11/09 13:44, 3F

11/10 14:54, , 4F
所以才說不建議 XD
11/10 14:54, 4F
文章代碼(AID): #1KNk0as4 (java)
討論串 (同標題文章)
文章代碼(AID): #1KNk0as4 (java)