黑马程序员技术交流社区
标题:
判断输入的是字符还是数字,有更全面的方法吗
[打印本页]
作者:
Optimus
时间:
2014-12-14 17:30
标题:
判断输入的是字符还是数字,有更全面的方法吗
判断输入的是字符还是数字,我的代码如下,但是好像还不是很完善,希望大神提出更完善的方法。
/**
* 判断输入的是字符串还是数字
* @author Administrator
*
*/
public class TestNumber01 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("请输入:");
String str = in.nextLine();
if (isNum(str)) {
System.out.println("你输入的是数字");
} else {
System.out.println("你输入的是字符串");
}
}
public static boolean isNum(String str) {
Pattern p = Pattern.compile("-?[0-9]+.?[0-9]*[^A-Za-z]");
Matcher m = p.matcher(str);
if(m.matches()){
return true;
}else{
return false;
}
}
}
复制代码
作者:
李天富
时间:
2014-12-14 19:42
代码我就不写了,这里给你提点建议:
1.正则里数字可以用\d表示,加上转义字符就是"\\d"
2.小数点要用\.表示,加上转义字符就是"\\.","."代表的是任意字符。
3.简单的匹配判断没必要使用Pattern类,直接使用String的matches()方法就行了。
作者:
Optimus
时间:
2014-12-14 23:12
李天富 发表于 2014-12-14 19:42
代码我就不写了,这里给你提点建议:
1.正则里数字可以用\d表示,加上转义字符就是"\\d"
2.小数点要用\.表 ...
多谢指教,正则还要再研究研究。
作者:
Afridoce
时间:
2014-12-15 08:58
楼主加油!!!!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2