我需要过滤客户信息列表并打印我们65岁以上的人员列表。
我首先创建了一个看起来像这样的方法......
public static boolean eligibleForRetirement(int age) {
if (age >= 65) {
return true;
} else {
return false;
}
}
和打印出列表的另一种方法
public static void menuOptionThree(){
ArrayList<Customer> list = generateFromFile("Week3ProgrammingDataUpdate.csv");
ArrayList<Customer> customersOver65 = new ArrayList<Customer>();
Customer.eligibleForRetirement(0).add(customersOver65);
System.out.println(customersOver65);
}
但这不起作用。我收到一条错误,上面写着“无法在基本类型boolean上调用add(ArrayList)。”
答案 0 :(得分:0)
您的代码变化最小,如下所示:
public static boolean eligibleForRetirement(Customer c) {
if (c.getAge() >= 65) {
return true;
} else {
return false;
}
}
//
ArrayList<Customer> list = generateFromFile("Week3ProgrammingDataUpdate.csv");
ArrayList<Customer> customersOver65 = new ArrayList<Customer>();
for(Custumer customer: list ){
if (Customer.eligibleForRetirement(customer)){
customersOver65.add(customer);
}
System.out.println(customersOver65);
}
答案 1 :(得分:0)
您没有添加到任何一个ArrayLists。实际上,您的代码正在尝试将ArrayList添加到Customers类中的方法。