Java 从存储在arraylist中的对象调用方法
我想知道为什么这不起作用。我看了另一篇文章,其中提出了我用于从存储在数组中的对象调用方法的方法,但它似乎不起作用。我应该澄清一下。我指的是Java 从存储在arraylist中的对象调用方法,java,arrays,for-loop,methods,arraylist,Java,Arrays,For Loop,Methods,Arraylist,我想知道为什么这不起作用。我看了另一篇文章,其中提出了我用于从存储在数组中的对象调用方法的方法,但它似乎不起作用。我应该澄清一下。我指的是printphases和totalCost方法。更具体地说,他们似乎不允许我从索引i的Purchase对象调用,而是从get(i)部分调用。在我的eclipse应用程序中,它以红色突出显示 public class Customer { private String name, address; double total; priva
printphases
和totalCost
方法。更具体地说,他们似乎不允许我从索引i
的Purchase
对象调用,而是从get(i)
部分调用。在我的eclipse应用程序中,它以红色突出显示
public class Customer {
private String name, address;
double total;
private ArrayList purchases = new ArrayList();
public Customer(String name, String address){
this.address=address;
this.name=name;
}
public void makePurchase(Purchase purchase){
purchases.add(purchase);
}
public String printPurchases(){
for(int i=0; i<purchases.size(); i++){
return **name+"\t"+address+purchases.get(i).toString();**
}
return"";
}
public double totalCost(){
total=0;
for(int i=0; i<purchases.size(); i++){
total = **total+purchases.get(i).getCost();**
}
}
}
公共类客户{
私有字符串名称、地址;
双倍总数;
私有ArrayList购买=新建ArrayList();
公共客户(字符串名称、字符串地址){
这个地址=地址;
this.name=name;
}
公共采购(采购){
采购。添加(采购);
}
公共字符串printPurchases(){
对于(int i=0;i您的return语句应该在return
和之间有一个空格
此外,如注释中所述,使用以下方法指定要填充的ArrayList
:
private ArrayList<Purchase> = new ArrayList<Purchase>();
private ArrayList=new ArrayList();
类型信息,即购买的属性和方法
将被删除(向上转换到对象
,没有自定义属性或方法),当您将它们存储在没有泛型类型的数组列表
中时,请尝试如下方式存储它们:
private ArrayList<Purchase> purchases = new ArrayList<>();
private ArrayList purchases=new ArrayList();
什么“不起作用”?什么不起作用?使用列表界面时,请指定要存储的对象。在您的情况下,请在public double totalCost(){…}中缺少ArrayListreurn后添加
private ArrayList<Purchase> = new ArrayList<Purchase>();
private ArrayList<Purchase> purchases = new ArrayList<>();