gpt4 book ai didi

java - 为什么我的位置是0?什么时候应该是1

转载 作者:行者123 更新时间:2023-12-02 04:13:05 25 4
gpt4 key购买 nike

我学的是Java,现在在ArrayList,我写了一些关于银行的方法,当我想在特定分行添加新客户时,位置总是返回0。这是我的方法的源代码正在谈论:

  • 主类中的实例:

    public static Scanner scanner = new Scanner(System.in);
    public static Bank newBank = new Bank("BMCE");
  • 主类(添加新客户的静态方法):

    public static void addNewCostumer(){
    System.out.println("Choose a branch :");
    String branchChoosed = scanner.nextLine();
    Branches branches = newBank.queryBranch(branchChoosed);
    if(branches == null){
    System.out.println("There are a problem, or you are entered a wrong name of branch");

    }
    else{
    System.out.println("Enter the name costumer :");
    String nameOfCostumer = scanner.nextLine();
    System.out.println("Enter the transaction number :");
    double transactions = scanner.nextDouble();
    scanner.nextLine();
    if(newBank.addNewCostumer(branches,nameOfCostumer,transactions)){
    System.out.println("The costumer was created in branch name :"+branches.getNameOfBranch());


    }else{

    System.out.println("Sorry you dindn't create a costumer in "+branches.getNameOfBranch()+" Try again please :)");

    }

    }
  • Bank 类中的实例:

    private String name;
    private ArrayList<Branches> branchesArrayList = new ArrayList<>();
  • 银行类别:

    public boolean addNewCostumer(Branches nameOfExistingBranch,String nameOfNewCostumer,double newTransaction){
    int position = findBranch(nameOfExistingBranch);


    if(position<0){
    System.out.println("There is not branch with this name");
    return false;
    }
    else{
    if(this.branchesArrayList.get(position).findCostumer(nameOfNewCostumer)>=0){
    System.out.println("You have already an existing costumer with that name");
    return false;
    }
    else{

    this.branchesArrayList.get(position).addNewCostumer(nameOfNewCostumer,newTransaction);
    return true;

    }

    }

    }
  • 查找分支的方法:

    public int findBranch(Branches branches){
    int position = this.branchesArrayList.indexOf(branches);
    if(position>=0){

    return position;

    }
    else
    return -1;
    }
  • 输入:

    0-Mdiq
    1-卡萨
    2-拉巴特

当我向 Rabat 或 Casa Branch 添加新客户时,该客户始终记录在 Mdiq(位置 0)中。

最佳答案

我发现代码中存在错误,因此问题已解决。在查询方法中,我编写了 this.branchesArrayList.get(0); 而不是使用位置作为参数。

关于java - 为什么我的位置是0?什么时候应该是1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56677370/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com