Java 如何将arraylist值链接到类对象?(安卓)

Java 如何将arraylist值链接到类对象?(安卓),java,android,arraylist,Java,Android,Arraylist,我在Android studio中创建了一个类Sale.java: public class Sale { private String Name; private double Price; private int quantity; public Sale(String Name, double Price, int quantity) { this.Name = Name; this.Price = Price; this.quantity = quanti

我在Android studio中创建了一个类Sale.java:

 public class Sale {

private String Name;
private double Price;
private int quantity;

 public Sale(String Name, double Price, int quantity) {
    this.Name = Name;
    this.Price = Price;
    this.quantity = quantity;

}
 public String getName() {
     return Name;
}

public void setName(String Name) {
    this.Name = Name;
}

public double getPrice() {
    return Price;
}

public void setPrice(double Price) {
    this.Price = Price;
}

public int getQuantity() {
    return quantity;
}

public void setQuantity(int quantity) {
    this.quantity = quantity;
}

 } 
在mainactivity.java中,我希望创建一个Arraylist来动态存储每个Sale对象,并在将来使用for循环跟踪哪个Sale对象属于Arraylist中的哪个“索引”

//Arraylist for storing information about items
ArrayList<Sale> iteminfo = new ArrayList<>();
Sale scheck;

 EditText ItemName;
EditText ItemPrice;
EditText Itemqty;

 protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_sales);

    ItemName = (EditText) findViewById(R.id.addName);
    ItemCostPrice = (EditText) findViewById(R.id.addprice);
    ItemQty = (EditText) findViewById(R.id.addqty);


 btnSaveinfo.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
    double Price = Double.parseDouble(ItemPrice.getText().toString());
                double Qty = 
 Double.parseDouble((ItemQty.getText().toString()));
            string Name = ItemName.getText().toString();

   scheck = new Sale(Name, Price, Qty);


 } }
//用于存储项目信息的Arraylist
ArrayList iteminfo=新的ArrayList();
赛克;
编辑文本项名称;
编辑文本项目价格;
编辑文本项数量;
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sales);
ItemName=(EditText)findViewById(R.id.addName);
ItemCostPrice=(EditText)findViewById(R.id.addprice);
ItemQty=(EditText)findViewById(R.id.addqty);
btnSaveinfo.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
double Price=double.parseDouble(ItemPrice.getText().toString());
双倍数量=
Double.parseDouble((ItemQty.getText().toString());
字符串名称=ItemName.getText().toString();
scheck=新销售(名称、价格、数量);
} }
如何编写代码,使每次单击按钮时,都会创建一个将其链接到ArrayList的销售对象?我是否正确地将ArrayList声明为对象类型?请帮助。

您只需执行以下操作:

iteminfo.add(scheck);

或者即使没有变量
scheck
,如果您不需要它做任何其他事情:

iteminfo.add(新销售额(名称、价格、数量));

ArrayList
只是一个对象列表,因此如果添加一个对象,它将通过以下方式可用:

Sale lastAddedSale=iteminfo.get(0);

如果您添加另一个对象,则
iteminfo.get(1)
将是此项,
ArrayList
将保持插入顺序,每次添加对象时,它都位于最后一个位置(要在列表中获得最后一个位置,您可以
iteminfo.get(iteminfo.size()-1)
如果列表当然不是空的话)

此外,变量名应该以小写字母开头,Java中的惯例是这样命名,这样就不会将变量与类名混淆(因为它们是以大写字母开头命名的)