下面是如果金额不是整数或浮点数时抛出异常的方法 但是当我强制传递字符串时它不起作用,因为在字符串的情况下它应该抛出异常并使有效的为假,但它仍然返回有效,真正的请指教什么是错的,我表达以下验证所需字段的表达式
private boolean isAmount(String amount) {
boolean isValid = true;
try {
if (amount.matches("[-+]?[0-9]*\\.?[0-9]+")) {
return isValid;
}
}
catch (NumberFormatException e) {
isValid = false;
}
return isValid;
}
第一溶液可以减少到'返回摩unt!= null && amount.matches(“[ - +]?[0-9] * \\。?[0-9] +”));'。 – sp00m 2013-05-06 09:05:22
你是对的,但是,我更喜欢编码的更详细的方法。我工作的地方之一要求它,其他人更喜欢它。令人惊讶的是,开发人员的数量无法解读您所写的内容,但可以用我写的内容解码。仍然+1您的答案。 – 2013-05-06 12:31:33