Метод getValueAt модели AbstractTableModel Java

Мне нужна помощь с методом getValue

Я читаю из файла и сохраняю значения в

 public List<Object[]> students;

Теперь я хочу добавить все эти значения в свой JTable.

 @Override
    public Object getValueAt(int row, int col) {
        //return data[row][col];
        // Here I have to get data from students
    }

Обычно из множества примеров я видел, что они используют Object[][] data для таких вещей, это может быть что-то вроде этого

//return data[row][col];

но так как я читаю из файла, я хочу List<Object[]> students;

Любая идея, как реализовать это в методе getValueAt?

мое решение будет таким

@Override
    public Object getValueAt(int row, int col) {
        //return data[row][col];
        for(Object[] j: students)
        {
            return j[col];
        }
        return null;
    }

но это возьмет только первый объект и будет назначено всем строкам в моем JTable


person Nicholas    schedule 09.11.2014    source источник


Ответы (1)


как насчет:

@Override
public Object getValueAt(int row, int col) {
    return students.get(row)[col];
}
person jmrah    schedule 09.11.2014
comment
бинго ))) Вау, я попробовал .get(), но никогда не думал, что смогу поставить .get()[] спасибо, чувак!!! отмечу как ответ через 8 минут - person Nicholas; 09.11.2014
comment
@Nicholas: Это простой ярлык для Object[] student = students.get(row); return student[col]; Но все было бы намного чище и проще, если бы студенты были List<Student>, а не List<Object[]>. - person JB Nizet; 09.11.2014
comment
Да, проблема была в том, что я делаю лабораторную работу, и учитель дал нам Шаблон, и я не мог изменить Список‹Объект›[] на Список‹Студент› или что-то в этом роде, таково было правило. Но все равно спасибо, теперь буду знать!! - person Nicholas; 09.11.2014