如何检查String中的String是否为数字


如何检查String中的String是否为数字


使用Apache Commons Lang 3.5及以上版本:NumberUtils.isCreatableStringUtils.isNumeric

或者定义一个函数:

public static boolean isNumeric(String str)  
{  
  try  
  {  
    double d = Double.parseDouble(str);  
  }  
  catch(NumberFormatException nfe)  
  {  
    return false;  
  }  
  return true;  
}

另一种方法可能是使用正则表达式来检查作为数字的有效性:

public static boolean isNumeric(String str)
{
  return str.matches("-?\\d+(\\.\\d+)?");  //match a number with optional '-' and decimal.
}