Компаратор для определенного столбца в JTable - PullRequest
3 голосов
/ 21 июля 2011

Как мне установить собственный компаратор для определенного столбца в JTable?

Третий столбец моей таблицы содержит строковое представление двойных значений, и я хочу создать компаратор для этого столбца, чтобы при щелчке по заголовку этого столбца он сортировался в соответствии с этим компаратором.

Ответы [ 2 ]

4 голосов
/ 21 июля 2011

В этом примере , class Value implements Comparable<Value>.

4 голосов
/ 21 июля 2011

Первый вопрос: почему, если вы работаете с парными символами, вы имеете дело со строками. Было бы лучше, если бы вы использовали double и просто установили формат в CellRenderer для этого столбца.

В любом случае, то, что вы ищете, может быть таким: http://download.oracle.com/javase/tutorial/uiswing/examples/components/TableSorterDemoProject/src/components/TableSorter.java


РЕДАКТИРОВАТЬ: Если каким-то образом перевод из Double в ваше представление является сложным, я бы создал класс Comparable, который содержит как число Double, так и представление String. Equals (), hashcode () и compareTo () будут реализованы с использованием значения double; cellRenderer () и toString () будут использовать представление String.

...