2014-10-31 89 views
-1

我想创建一个方法,它允许其他Account被添加到一个集合:“无法找到符号 - 方法添加”使用ArrayList中

import java.util.*; 
import java.util.ArrayList; 

/** 
* The Account list if the grouping of all the accounts for customers in the system. 
* 
* @author 
* @version 1.0 
*/ 
public class AccountList 
{ 
    // This is the ArrayList being declared 

    private ArrayList<Account> accounts; 

    /** 
    * Constructor for objects of class AccountList 
    */ 

    public AccountList() 
    { 
     //This is the ArrayList being initialised in a constructor. 
     accounts = new ArrayList<Account>() ; 
    } 

    /** 
    * This method will allow a new account to be added to the system. 
    * 
    * @param accounts the accounts in the system. 
    */ 
    public void addAccount(Account accounts) 
    { 
     accounts.add(); 

    } 
} 

的问题是,它无法找到方法addaddAccount部分,即使在类的顶部导入了ArrayList类。我是Java新手,所以任何帮助将不胜感激!

+0

'ArrayList'不具有'不采取任何参数add'方法。 – JonK 2014-10-31 09:45:26

+1

我认为你曾经喜欢过去的“阴影”。您的'accounts.add()'操作在类的accounts字段上是_NOT_,但在methods参数上。 – Korashen 2014-10-31 09:47:47

回答

1

void addAccount(Account accounts)方法接受名为Account类型的accounts一个参数,和我假设你Account类没有一个add方法,这样你就得到了错误无关,与ArrayList的添加方法。

它应该是:

public void addAccount(Account account) 
{ 
    accounts.add(account); 
} 

假设你想一个帐户添加到帐户列表。

您的错误是使用相同的变量名称accounts作为该方法的参数以及作为持有列表的成员。前者隐藏后者,另外,您没有提供参数给ArrayList的添加方法。

+0

这是正确的答案:-) – OhadR 2014-10-31 09:51:24

+0

谢谢你的工作! :D – Patterrz 2014-10-31 11:03:05

0

更改像下面

public void addAccount(Account account) 
{ 
    accounts.add(account); 
} 

如果使用本地变量名称相同外变量。那么首先会考虑局部变量。

1

在代码

public void addAccount(Account accounts) 
{ 
    this.accounts.add(accounts); 

} 

变化为更click here

+0

其正确的一个。 +1 – Kumar 2014-10-31 10:16:28

相关问题