ArrayList仅存储一个对象

Mat*_*ene 0 java arraylist

我的Arraylist只存储一个对象.每次输入新对象时,它都会覆盖当前的对象.

通话方式:

    public void saveBookingInfo(View view) {

    EditText applicantNameText = (EditText) findViewById(R.id.applicantNameTextField);
    EditText itemToBurnText = (EditText) findViewById(R.id.itemToBurnTextField);

    String appName = applicantNameText.getText().toString();
    String appItemToBurn = itemToBurnText.getText().toString();

    if (appItemToBurn.isEmpty() || appName.isEmpty()) {
        Toast.makeText(BookingScreen.this, "Please fill in all fields.", Toast.LENGTH_SHORT).show();
    }
    else {
        sendApplication.storeApplication(appName, appItemToBurn);
        this.finish();
    }
}
Run Code Online (Sandbox Code Playgroud)

ArrayList方法:

  public void storeApplication(String name, String item){
    ArrayList<Application> peopleAttending = new ArrayList<>(10);
    peopleAttending.add(new Application(name, item));
}
Run Code Online (Sandbox Code Playgroud)

Lui*_*oza 7

您正在声明该List<Application>方法的本地参数.将其作为类中的字段移动.

private List<Application> peopleAttending = new ArrayList<>();

public void storeApplication(String name, String item) {
    peopleAttending.add(new Application(name, item));
}
Run Code Online (Sandbox Code Playgroud)