
/** *//**
* Validate a double number
*
* @param num Need to validate number
* @param intPart Integer length
* @param decPart Decimal length
* @param exactMatch Is exact match decimal
* @return If the match, returns true, otherwise return false
*/
public static boolean numberValidate(String num, int intPart, int decPart, boolean exactMatch) 
...{ 
try ...{ 
if (num.trim().equals("")) ...{
return false; }
Double dnum = new Double(num);
String pattern = ""; 
for (int i = 0; i < intPart; i++) ...{
pattern = pattern + "#"; }
java.text.DecimalFormat nf = new java.text.DecimalFormat(pattern);
nf.setMaximumIntegerDigits(intPart);
nf.setMaximumFractionDigits(0);
String snum = nf.format(dnum.intValue());
// int
int inum = Integer.parseInt(snum); 
if (inum != Double.valueOf(num).intValue()) ...{
return false;
}
// dec 
if (num.indexOf(".") != -1) ...{
String sdec = num.split("[.]")[1]; 
if (exactMatch && (sdec.length() > decPart)) ...{
return false;
}
} 
} catch (Exception ex) ...{
return false;
}
return true;
}
本文介绍了一种方法来验证给定的浮点数是否符合特定格式要求,包括整数部分长度、小数部分长度及精确匹配等。通过使用Java的DecimalFormat类和其他内置函数,该方法能够准确地判断一个字符串表示的数字是否满足预设的格式。

1060

被折叠的 条评论
为什么被折叠?



