如何向java中的arraylist添加数据?

How to add data to arraylist in java?

我创建了微调器来过滤列表中的数据。 我有数据列表,我想添加到数组列表中, 例如我的代码:

spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

    @Override
    public void onItemSelected(AdapterView<?> parent, View view,
                               int position, long id) {
        String label = parent.getItemAtPosition(position).toString();


        ArrayList<MScheduleEvent.data> filteredList = new ArrayList<>();


        list_model.clear();
        for (MScheduleEvent.data m: _model){
            if (label.compareTo("ALL")==0 || m.getCategory().compareToIgnoreCase(label) == 0) {
                MScheduleEvent.data data = new MScheduleEvent.data(
                        m.getId(),
                        m.getName(),
                        m.getDescription(),
                        m.getDay(),
                        m.getDate(),
                        m.getTime(),
                        m.getPlace()
            }
            filteredList.add(data); // ERROR
        }

    }

    @Override
    public void onNothingSelected(AdapterView<?> arg0) {

    }
});

但我想在 filteredList 中添加数据总是错误 "add(MSchedule.data) in java.util.arraylist cannot be applied to java.util.linkedlist "

您不能在那里使用 data 变量,因为它的作用域不可见。试试这个:

   for (MScheduleEvent.data m: _model){
        if (label.compareTo("ALL")==0 || m.getCategory().compareToIgnoreCase(label) == 0) {
            MScheduleEvent.data data = new MScheduleEvent.data(
                    m.getId(),
                    m.getName(),
                    m.getDescription(),
                    m.getDay(),
                    m.getDate(),
                    m.getTime(),
                    m.getPlace()
            filteredList.add(data);
        }

    }