首页 > 解决方案 > 如何将数组列表索引的特定内容传递给方法?

问题描述

如何将数组列表索引的特定内容传递给方法?(我不确定正确的术语)

这就是我想要实现的目标:获取用户输入以从第一个帐户中提取的金额,然后打印余额。对存款重复相同的操作。

这是我的课程代码:

import java.util.Date;

public class Account2 {
    private int id = 0;
    private double balance = 0;
    private static double annualInterestRate = 0;
    private Date dateCreated;

    public Account2() {
        id = 0;
        balance = 0;
    }

    public Account2(int id, double balance) {
        this.id = id;
        this.balance = balance;
    }

    // getters and setters (omitted for brevity)

    public double withdraw(int amount) {
        return balance - amount;
    }

    public double deposit(int amount) {
        return balance + amount;
    }
}

这是测试类:

import java.util.ArrayList;
import java.util.Scanner;

public class TestAccount2 {
    public static void main(String[] args) {
        //Account2 acc = new Account2();
        Account2.setannualInterestRate(4.5);
        //Creates an ArrayList of 3 Account objects
        ArrayList<Account2> list = new ArrayList<Account2>();

        for(int i=1; i<4; i++) {
            //USE ARRAYLIST SYNTAX
            list.add(new Account2(i+100, i*10000 ));
        }

        //print all the content of ArrayList
        for(Account2 auto : list) {
            System.out.println(temp);
        }
    
        System.out.println("Enter the amount you'd like to withdraw: ");
        Scanner input = new Scanner(System.in);
        double amount = amount.nextDouble;
        // Get user input for the amount to withdraw from the first account, then print the balance. 
        // Repeat the same for deposit
    }
}

这是我卡住的地方:

        System.out.println("Enter the amount you'd like to withdraw: ");
        Scanner input = new Scanner(System.in);
        double amount = amount.nextDouble;
        // Get user input for the amount to withdraw from the first account, then print the balance. 
        // Repeat the same for deposit

这是我试图将arraylist的索引传递到的方法:

public double withdraw(int amount) {
    return balance - amount;
}

感谢你。

标签: java

解决方案


您需要调用那些指定要更改的帐户实例的方法。例如,如果您想从 ArrayList 的第一个帐户中提取,您将编写如下内容:

list.get(0).withdraw(amount);

您可以对该deposit方法执行相同的操作。


推荐阅读