我有银行类,有三个所有者及其余额。 所以我需要写一种方法来计算存款总额,但是我不知道怎么做。我可以帮忙吗?而且该方法应该在接口中
public interface IAccount
{
decimal GetBalance();
}
public class Account : IAccount
{
private string owner;
private decimal balance;
public Account(string owner, decimal balance)
{
this.owner = owner;
this.balance = balance;
}
public string Getowner()
{
return owner;
}
public decimal GetBalance()
{
return balance;
}
public override string ToString()
{
return String.Format("Owner: {0},Balance: {1}", owner, balance);
}
}
public class Bank
{
List<Account> BankList = new List<Account>();
public void AddAccount(params Account[] acc)
{
BankList.AddRange(acc);
for (int i = 0; i < acc.Length; i++)
Console.WriteLine("Have added: {0}", acc[i].ToString());
}
public override string ToString()
{
string str = "\nBalance in bank:\n";
for (int i = 0; i < BankList.Count; i++)
str += String.Format(BankList[i].ToString() + "\n");
return str;
}
}
答案 0 :(得分:1)
您可以将存款存储到一个列表变量中,然后遍历该列表,将每个存款添加到currentBalance变量中。
您可以将其放置在要存储存款的位置,例如银行类
List<decimal> deposits = new List<decimal>():
然后调用您的GetBalance方法并将其传递给您的列表:
GetBalance (List<decimal> balances)
{
decimal currentBalance = 0;
foreach (var balance in balances)
{
currentBalance += balance;
}
return currentBalance;
}
这样一来,您可以累加所有存款并找到余额,如果需要对所有帐户进行此操作,则可以用类似的方式对帐户列表进行循环,并在循环外声明变量。 / p>
答案 1 :(得分:1)
“因此,我需要编写一种用于计算存款总额的方法”
public decimal GetTotalAmount()
{
return BankList.Sum(x => x.GetBalance());
}
“并且此方法应该在接口中”
public interface IBank
{
decimal GetTotalAmount();
}
然后实现界面...
public class Bank : IBank