Я работаю над jTable и хочу использовать setAutoCreateRowSorter (true) и отсортировать его для defaultTableModel. Мой код представляет собой смесь Java и Groovy, учитывая обстоятельства (я предпочитаю простой Java, так как мои навыки программирования очень просты, но это не вариант ...).
Таблица работает, и я могу получить сортировку, но для столбцов с целыми числами и числами с плавающей точкой сортировка некорректна, поскольку элементы рассматриваются как String. Из JavaDoc я понимаю, что мне нужно переопределить getColumnClass. Теперь сделать это на Java будет легко и что-то вроде:
public Class getColumnClass(int column) {
if (column == 2) { //2 is a column with integers
return Integer.class;
} else {return String.class;
}
}
Когда я пишу выше, "Unknown Type: Method_Def" в начале "public Class getColumnClass ..." обнаруживается.
Я не знаю, как это исправить, и подумал, что это должно быть связано с внутренними ограничениями класса groovy 1.57, которые я должен использовать, поэтому подумал, что я пишу это в groovy, и меня смущает синтаксис и как это сделать правильно. Я огляделся и попытался воспроизвести найденные примеры:
def s = [getColumnClass: {int column -> {if (column ==n) return Integer.class;}
else {return String.class;} } ] as Class
это не работает, и я явно делаю ошибки ..
Как я могу исправить код Java, чтобы он не получал "Unknown type Method_def", или исправить его, преобразовав этот код в код groovy? Оба сделают, и я буду благодарен ...