作者darkk6 (Mr. Pan)
看板java
标题Re: [问题] 输入分辨字串与数字
时间Sun Nov 9 11:31:45 2014
※ 引述《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://webptt.com/cn.aspx?n=bbs/java/M.1415503908.A.D84.html
1F:推 j94223: 谢谢 我决定用你那个不建议的做法XD 11/09 11:45
2F:→ cyclone350: 最好不要把try catch当条件判断用 11/09 13:42
3F:→ cyclone350: 建意用yyc1217的方式配合if else方法实作 11/09 13:44
4F:→ darkk6: 所以才说不建议 XD 11/10 14:54