C#设置值之前的数据验证

本文关键字:数据 验证 设置 | 更新日期: 2023-09-27 18:23:46

所以,我的挑战是:

构造函数应该调用基类构造函数来初始化帐户的名称、编号和余额。它还应该在自己的类setInterestRate中调用一个方法,该方法应该设置InterestRate变量并验证速率是否为正数。如果传入的利率为负,请将利率设置为零。

这对我来说似乎相当简单,但VS正在为我的setInteresteRate方法ping我(并非所有代码路径都返回值)。我一定错过了什么,但我不确定是什么。有什么建议吗?这是我的代码:

public SavingsAccount(string AccountName, int AccountNumber, decimal Balance, double rate) : base(AccountName, AccountNumber, Balance)
    {
        InterestRate = rate;
    }
    public double setInterestRate(double rate)
    {
        if (rate >= 0)
        {
            InterestRate = rate;
        }
        else
        {
            InterestRate = 0;
        }
    }

C#设置值之前的数据验证

使您的setInterestRate方法无效,如下所示。因为您只需要设置InterestRate。

 public void setInterestRate(double rate)

如果方法中有返回类型,则必须返回一个值。这就是你的错误。

建议

将您的InterestRate设置为如下所示的房产样本,并在那里进行验证

double interestRate;
    public double InterestRate
    {
        get
        {
            return interestRate;
        }
        set
        {
            if (value >= 0)
            {
                interestRate = value;
            }
            else
            {
                interestRate = 0;
            }
        }
    }