你能帮我解决这个错误“类型未定义的方法”吗?

Could you help me with this error "The method in undefined for the type"?

提问人:Dindy Ba 提问时间:6/5/2022 最后编辑:Dindy Ba 更新时间:6/5/2022 访问量:1719

问:

我试图使用 asList() 填充 Arraylist,但我无法理解 Eclipse 给我的错误,我阅读了其他解决方案,但我不知道将它们用于我的情况

package arraylistvirtuale;
import java.util.ArrayList;
import java.util.Arrays;
public class BankAccountArraylisttester {

    public static void main(String[] args) {
        
        BankAccount cc = new BankAccount(1115);

        ArrayList<BankAccount> accounts 
        = new ArrayList<BankAccount>(Arrays.asList(cc(1115)));
        
        accounts.add(1, new BankAccount(1008));
        accounts.remove(0);
        System.out.println("size=" + accounts.size());
        BankAccount first = accounts.get(0);
        System.out.println("first account number=" + first.getAccountNumber());
        BankAccount last = accounts.get(accounts.size()-1);
        System.out.println("last account number=" + last.getAccountNumber());
        BankAccount bankaccount= new BankAccount(2385);
        bankaccount.deposit(100.1); 
        System.out.println("balance =" + bankaccount.getBalance());
    }

}

Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
    The method cc(int) is undefined for the type BankAccountArraylisttester

    at arraylistvirtuale/arraylistvirtuale.BankAccountArraylisttester.main(BankAccountArraylisttester.java:11)
Java 数组 ArrayList 方法 program-entry-point

评论

0赞 Silvio Mayolo 6/5/2022
你认为什么时候应该意味着什么?该语法用于调用函数,并且您正在尝试将其用于值。cc(1115)ccBankAccount

答:

0赞 arcy 6/5/2022 #1

目前尚不清楚您打算使用什么 - 在 Java 源代码中,语法是 的调用,作为参数传递。因此,错误消息会确切地告诉您出了什么问题 - 类中没有以 int 作为参数命名的方法。Arrays.asList(cc(1115))x(y)xyccBankAccountArraylisttester

该方法将数组作为参数;您已经传递了它看起来像一个单独的对象,如果我们忽略 .因此,即使删除了 ,也会出现错误,指示没有将 a 作为参数的方法。Arrays.asList()(1115)(1115)asList()BankAccountArraylisttester

也许你想把一个;如果是这样,您可以创建 ArrayList,然后添加:ccArrayList<BankAccount>cc

ArrayList<BankAccount> accounts = new ArrayList<>();
accounts.add(cc);

我已经推测得足够多了,但没有试图弄清楚应该是什么。firstlast

评论

0赞 Dindy Ba 6/5/2022
我会试着解释一下自己,所以我试图使用 asList 来填充银行账户的 ArrayList,我在另一个类中有一个用于创建银行帐户的构造函数,“cc”是银行账户的名称。您在下面看到的是我之前用来填充数组列表的内容,我试图模拟它,但通过使用 asList ArrayList<BankAccount> accounts = new ArrayList<BankAccount>();accounts.add(新银行帐户(1001));accounts.add(新银行帐户(1015));accounts.add(新银行帐户(1015));
0赞 itfedorovsa 6/5/2022 #2

如果已为变量赋值,则使用此变量。该变量已包含您写入其中的内容。

    BankAccount cc = new BankAccount(1115);
    BankAccount dd = new BankAccount(1234);
    BankAccount ee = new BankAccount(3333);
    ArrayList<BankAccount> accounts
            = new ArrayList<BankAccount>(Arrays.asList(cc, dd, ee));

艺术

   ArrayList<BankAccount> accounts
        = new ArrayList<BankAccount>(Arrays.asList(
   new BankAccount(1234);
   new BankAccount(2222);
   new BankAccount(3333);
   ));

asList() 方法填充您创建的列表或已创建的其他列表。

例如:

 ArrayList<BankAccount> accounts
 = new ArrayList<BankAccount> 
 (Arrays.asList(name_of_another_list));

评论

0赞 Dindy Ba 6/5/2022
哦,我想我现在明白了,谢谢,我现在就试试
0赞 itfedorovsa 6/5/2022
如果对您有帮助,请不要忘记单击答案上的“最佳答案”选项:)
0赞 Dindy Ba 6/5/2022
在哪里可以找到该选项?
0赞 itfedorovsa 6/5/2022
@DindyBa 这是在答案左侧的投票箭头下方