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

createh55个月前 (12-13)技术教程66

数字在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 字符串的妙用:那些不为人知的细节与技巧!

在 Java 中,String 类型可以说是无处不在,几乎每段代码都离不开它!尽管 Java 的 String 使用简单,但内部却充满了奥妙。今天我们来聊聊 String 的那些巧妙应用,带你探索如何...