Java中如何检查字符串是否为数字?

createh56个月前 (12-13)技术教程93

数字在Java中分为:int - 整型,long - 长整型,float - 浮点型,double - 双精度浮点型。

Talk is cheap, Show me the code. -- by: Linus Torvalds

方式一、

try catch 法,4种类型中 double 能表示的范围最大,可以使用Double.parseDouble()进行转换,出现异常说明不是数字,代码如下:

public static boolean isNum(String str) {
    boolean b = false;
    try {
        Double.parseDouble(str);
        b = true;
    } catch (NumberFormatException e) {
        e.printStackTrace();
    }
    return b;
}

方式二、

使用正则表达,代码如下:

public static boolean isNum(String str) {
    return str.matches("\\d+(\\.\\d+)?");
}

方式三、

使用commons-lang3,测试版本为:3.11

// 此方式只能判断:int 和 long
System.out.println(StringUtils.isNumeric("123")); // true
System.out.println(StringUtils.isNumeric("123.3")); // false
System.out.println(StringUtils.isNumericSpace("23")); // true
System.out.println(StringUtils.isNumericSpace("23.3")); // false

相关文章

Java String类

字符串广泛应用在Java编程中,在Java中字符串属于对象,Java提供了String类来创建和操作字符串。 创建字符串 创建字符串最简单的方式如下:String greeting = "Hello...