我正在写数据验证的贷款计算。我的最高贷款额是1,000,000,我正在使用下面的方法进行验证。当我在程序中输入1,000,000时,它会返回我的错误方法。我认为(d> = max)可以让我达到并包括我的最大值。任何人都可以看到这种方法的问题,或者是否有可能我应该在我的代码的其他地方查找问题。数据验证
任何帮助表示赞赏。
public static double getDoubleWithinRange(Scanner sc, String prompt, double min, double max)
{
double d = 0.0;
boolean isValid = false;
while (isValid == false)
{
d = getDouble (sc, prompt);
if (d <= min)
{
System.out.println(
"Error! Number must be greater than " + min + ".");
}
else if (d >= max)
{
System.out.println("Error! Number must be less than " + max + ".");
}
else
isValid = true;
}
return d;
//从用户 获取输入的System.out.println( “数据输入”); 双loanAmount = getDoubleWithinRange(SC, “输入贷款量:”,0,1000000); 双的InterestRate = getDoubleWithinRange(SC, “输入每年利率:”,0,20); INT年= getIntWithinRange(SC, “的年输入数字:”,0100);
显示一些输入和输出(从控制台窗口理想地复制/粘贴);也显示调用此方法的代码和传入的值。 – 2012-02-24 03:08:37
欢迎使用贷款计算器 数据输入 输入贷款金额:1000000 错误!数字必须小于1000000.0。 输入贷款金额: – 2012-02-24 03:10:24
对不起,我不知道如何发布代码,而不是在原始问题 – 2012-02-24 03:12:06