java不兼容类型类数据类型

时间:2016-03-29 18:52:10

标签: java class types

嗨,这是我在这里的第一篇文章,我遇到了一个问题。我想假设基于一个名为Account的预制数据类型类创建一个类。我的主要问题在于public int findAccountByAcctNumber(int acctNumber)和 公共帐户removeAccount(int index)。困难在于如何使用不同的数据类型创建这些方法?

import java.util.*;

public class Bank
{

    private ArrayList<Account> Accounts;
    private int currentSize;
    private String bankName;


    public Bank(String name)
    {
        bankName = name;
        Accounts = new ArrayList<Account>(0);

    }


    public void addAccount(Account acct){
        Accounts.add(acct);

    }
    public int findAccountByAcctNumber(int acctNumber){
        int tempIndex = -1;
        for(int i = 0; i < Accounts.size(); i++){
            if(Accounts.get(i) == acctNumber){
                tempIndex = i;
            }
        }
        return tempIndex;

    }
    public Account removeAccount(int index){

        Accounts.remove(index);
        Account 
        return index;

    }
    public String toString(){
        String output = "";

        output += bankName + "/n";
        for(int i = 0; i < arrlist.size(); i++){
            output += Accounts.get(i);
        }
        return output;


    }


}

1 个答案:

答案 0 :(得分:1)

您还没有向我们展示Account课程,但我猜测它有一个字段accountNumber

您需要将输入帐号与字段进行比较,而不是Account对象本身:

  public int findAccountByAcctNumber(int acctNumber){
        int tempIndex = -1;
        for(int i = 0; i < Accounts.size(); i++){
            //NOT  if(Accounts.get(i) == acctNumber){ ->
            if(Accounts.get(i).getAccountNumber() == acctNumber){
                tempIndex = i;
            }
        }
        return tempIndex;

    }

remove非常简单(ArrayList已经实现了这个功能):

public Account removeAccount(int index){
    return Accounts.remove(index);
}