私は次のコードを持っています。ただし、存在しないarraylistのインデックスにアクセスしているようです...コードは次のとおりです。助けていただければ幸いです。
import java.util.*;
public class Main {
public static void main(String[] args) {
ArrayList<BankAccount> allAccounts = new ArrayList<BankAccount>();
Customer john = new Customer();
john.firstName = "John";
john.lastName = "Doe";
BankAccount johnBa = new BankAccount();
johnBa.accNumber = "111-222-333";
johnBa.balance = 200;
johnBa.myCustomer = john;
Customer nick = new Customer();
nick.firstName = "Nick";
nick.lastName = "James";
BankAccount nickBa = new BankAccount();
nickBa.accNumber = "222-333-444";
nickBa.balance = 100;
allAccounts.add(johnBa);
allAccounts.add(nickBa);
ArrayList<Customer> allCust = new ArrayList<Customer>();
allCust = extractCustomers(allAccounts);
for(Customer c : allCust) {
System.out.println(c.firstName+" "+c.lastName);
}
}
static ArrayList<Customer> extractCustomers(ArrayList<BankAccount> ba) {
ArrayList<Customer> cu = new ArrayList<Customer>();
for(BankAccount b: ba) {
cu.add(b.myCustomer);
}
return cu;
}
}
public class BankAccount {
String accNumber;
double balance;
Customer myCustomer;
}
public class Customer {
String firstName;
String lastName;
}