Осторожно: это не ответ, а просто краткое изложение трудностей и некоторых ссылок.
Это одна из тех задач, которые на удивление трудно решить.Ничего в ядре (даже в SwingX :-), которое его поддерживает.В частности, Comparator не помогает, потому что он ничего не знает о направлении сортировки, то есть он не может знать, должен ли он найти определенную строку сверху или снизу.Единственный соавтор, который может это сделать, может быть RowSorter.Из-за того, что все в DefaultRowSorter тесно скрыто, настройка сводится к полной повторной реализации.Пример обработки нулей был опубликован Уолтером Ланом в OTN, а позже описан как подправленный для более сложного контекста.