java中是否有任何方法可以检查字符串是否为数字?

所以我想检查我的字符串是否可以是数字。我不想为此编写任何样板代码。有一种common-apache isNumeric()
方法,但它为""空白值提供 true,为十进制值提供 false ( 12.3)
那么还有其他方法可以做到这一切吗?

慕运维8079593
浏览 120回答 3
3回答

月关宝盒

最简单的方法是通过方法解析它。exp。try {        double d = Double.parseDouble(STRING_TO_TEST);    } catch (NumberFormatException | NullPointerException e) {        //do logic     }    return true;但是如果你不需要这个,Apache Commons 有一个有用的方法:exp。NumberUtils.isCreatable("22.6") ;返回真NumberUtils.isCreatable("") ;返回 false更多信息:https ://www.baeldung.com/java-check-string-number

萧十郎

public boolean isNumber(String s) {  try {    Double.parseDouble(yourString);    return true;  } catch(Exception e) {    return false;  } }如果Java可以解决它,这会给你真实的

繁星点点滴滴

你可以用regex这个。将regex是:[0-9]+这里有些例子:String regex = "[0-9]+";System.out.println("12".matches(regex));System.out.println("abc".matches(regex));System.out.println("".matches(regex));如果您还想考虑十进制值,那么您可以使用[0-9]+(\.)?[0-9]*正则表达式。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java