Страницы

Поиск по вопросам

вторник, 23 апреля 2019 г.

как правильно переопределить метод SetValueAt()?

при переопределении данного метода выдается ошибка:
The left-hand side of an assignment must be a variable.
Как ее убрать?
Фрагмент кода программы :
public class AbstrTableModel extends AbstractTableModel {
HashMap hashMap; public static int key = 0; private File fin; private Scanner fileScanner;
public AbstrTableModel(){ AbstrTableModel.key = 0; hashMap = new HashMap(); }
//-------------------------------------
@Override public void setValueAt(Object value, int rowIndex, int columnIndex){ switch(columnIndex){ case 1: hashMap.get(rowIndex).setModel() = (String)value; return; case 2: hashMap.get(rowIndex).setRazmer() = (Double)value; return; case 3: hashMap.get(rowIndex).setTip_displeya()= (String)value; return; case 4: hashMap.get(rowIndex).setVmFlash()= (Integer)value; return; } } }


Ответ

Ошибка значит - "в левой части оператора присваивания должна быть переменная".
Вы не можете использовать конструкцию hashMap.get(rowIndex).setModel() в левой части операции присваивания. Если setModel() -метод-сеттер, то он и должен устанавливать какое то значение через свой аргумент.

Комментариев нет:

Отправить комментарий