Java 数据验证

Java 数据验证,java,Java,我正在写一个贷款计算与数据验证。我的最大贷款金额为1000000,我正在使用以下方法进行验证。当我在程序中输入1000000时,它会返回我的错误方法。我认为(d>=max)将允许我达到并包括我的max。有人看到这个方法有问题吗?或者我是否应该在代码的其他地方查找问题 感谢您的帮助 public static double getDoubleWithinRange(Scanner sc, String prompt, double min, double max) { double d =

我正在写一个贷款计算与数据验证。我的最大贷款金额为1000000,我正在使用以下方法进行验证。当我在程序中输入1000000时,它会返回我的错误方法。我认为(d>=max)将允许我达到并包括我的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;
公共静态双getDoubleWithinRange(扫描仪sc、字符串提示、双最小值、双最大值)
{
双d=0.0;
布尔值isValid=false;
while(isValid==false)
{
d=getDouble(sc,提示符);
如果(d=最大值)
{
System.out.println(“错误!数字必须小于“+max+”);
}
其他的
isValid=true;
}
返回d;
//从用户处获取输入 System.out.println(“数据输入”); double loanAmount=getDoubleWithinRange(sc, “输入贷款金额:”,0,1000000); double interestRate=getDoubleWithinRange(sc, “输入年利率:”,0,20); 整数年=getIntWithinRange(sc,
“输入年数:”,0100);

您所说的如果金额大于或等于一百万,则会导致错误。您想说如果金额大于显示错误,则使用
如果(d>max)
,因为您最多需要1000000(并且可以包括1000000)。

显示一些输入和输出(理想情况下,从控制台窗口复制/粘贴);还显示调用此方法的代码和传入的值。欢迎使用贷款计算器数据输入输入贷款金额:1000000错误!数字必须小于1000000.0。输入贷款金额:抱歉,我不知道如何发布原始问题以外的代码确定我取了=注销,现在是(d>最大值)它仍然说这个数字需要少于一百万