繁体   English   中英

java不兼容的类型类数据类型

[英]java incompatible types class data types

嗨,这是我在这里的第一篇文章,我遇到了麻烦。 我想根据一个名为 Account 的预制数据类型类创建一个类。 我的主要问题在于 public int findAccountByAcctNumber(int acctNumber) 和 public Account 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;


    }


}

您还没有向我们展示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);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM