在执行Long.valueOf()方法的时候,要求传入的参数必须是数字的字符串。如果传入的是"system",则会抛出NumberFormatException异常,有没有哪个jar包里有方法,可以提前判断一下输入的字符串是不是数字类型的字符串呢?
已经知道答案了:
有方法: StringUtil.isNumeric()
在执行Long.valueOf()方法的时候,要求传入的参数必须是数字的字符串。如果传入的是"system",则会抛出NumberFormatException异常,有没有哪个jar包里有方法,可以提前判断一下输入的字符串是不是数字类型的字符串呢?
已经知道答案了:
有方法: StringUtil.isNumeric()
15 回答8.4k 阅读
8 回答6.2k 阅读
5 回答3.2k 阅读✓ 已解决
3 回答3.6k 阅读✓ 已解决
1 回答4k 阅读✓ 已解决
3 回答6k 阅读
2 回答2.8k 阅读✓ 已解决
上面三种方式中,第二种方式比较灵活。
第一、三种方式只能校验不含负号“-”的数字,即输入一个负数-199,输出结果将是false;
而第二方式则可以通过修改正则表达式实现校验负数,将正则表达式修改为“^-?[0-9]+”即可,修改为“-?[0-9]+.?[0-9]+”即可匹配所有数字。