我有以下代码:
public class Bank
{
private BankAccount[] bank;
private int pointer = 0;
public Bank()
{
bank = new BankAccount[10];
}
public void addAccount(BankAccount bankAccount)
{
for(int pointer = 0; pointer <= 10; pointer ++)
{
bank[pointer] = bankAccount;
}
}
public type getAccount(int i)
{
return BankAccount[i];
}
getAccount方法的返回导致了我的问题。
该方法的要求如下:
BankAccount对象位于另一个类中并且工作正常。我在BankAccount上遇到胡萝卜无法找到符号的错误。我不知道为什么会这样。
所以我的问题是:为什么不找到BankAccount对象,它应返回什么类型?
答案 0 :(得分:1)
好吧,您的getAccount
方法应返回BankAccount
类型(使用bank
对象。所以,它应该是这样的:
public BankAccount getAccount(int i)
{
return bank[i];
}
答案 1 :(得分:-1)
为什么找不到
BankAccount
对象......
因为没有BankAccount
个对象。有BankAccount
类,但您的实例(对象)保存在bank
中。这就是你想从中获取它们的地方。
......它应该返回什么类型?
嗯,该方法的目的是获取帐户,因此代码中有一种类型适合该帐户。 (是的,我故意模糊不清,因为如果我帮助你到达那里而不是仅仅告诉你,那对你来说会更有价值。)
请注意,要发出获取帐户的错误信号,您通常不会返回某些内容*,而是抛出错误(“例外”)。
旁注:永远不要这样做:
bank = new BankAccount[10];
然后再
for(int pointer = 0; pointer <= 10; pointer ++)
首先,你的循环太过分了(该数组中没有bank[10]
条目)。第二,如果你改变bank
的长度,现在你必须在两个的地方做。而不是<= 10
,请使用< bank.length
:
for(int pointer = 0; pointer < bank.length; pointer ++)
* (他说的非常普遍,并且允许每条规则都有例外情况)