StringUtils-isNumeric


出现判断某个字符串是否能转换能数字的需求时,应该如何处理?

一 拍脑袋方案:String转Integer异常判断

package test.stringutils;

import org.apache.commons.lang3.StringUtils;

public class StringUtilsDemo {

    public static void main(String[] args) {

        String str1 = "123";
        String str2 = "hello world";

        System.out.println(isNumber(str1));
        System.out.println(isNumber(str2));

    }

    public static boolean isNumber(String string) {
        try {
            Integer.parseInt(string);
            return true;
        } catch (Exception e) {
            return false;
        }
    }
}

输出结果:

true
false

虽然能实现,但通过异常判断进行处理,有点太暴力。

二 使用StringUtils的方法isNumeric(org.apache.commons.lang3.StringUtils)

package test.stringutils;

import org.apache.commons.lang3.StringUtils;

public class StringUtilsDemo {

    public static void main(String[] args) {

        String str1 = "123";
        String str2 = "hello world";

        System.out.println(StringUtils.isNumeric(str1));
        System.out.println(StringUtils.isNumeric(str2));

    }

}

输出结果:

true
false

这个方案比较优雅,尤其是一些工具类,有现成的轮子就用现成的,没必要重复造轮子。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM