JavaFX Tableview按升序排序java.sql.Date列,底部为null
我有一个包含java.sql.Date的列,我希望它按升序将null放在底部: 现在,他们最终都在上面JavaFX Tableview按升序排序java.sql.Date列,底部为null,java,javafx,Java,Javafx,我有一个包含java.sql.Date的列,我希望它按升序将null放在底部: 现在,他们最终都在上面 followupCol.setCellFactory((TableColumn<DisabilityCase, Date> p) -> { TableCell<DisabilityCase, Date> cell = new TableCell<DisabilityCase, Date>()
followupCol.setCellFactory((TableColumn<DisabilityCase, Date> p) ->
{
TableCell<DisabilityCase, Date> cell = new TableCell<DisabilityCase, Date>()
{
@Override
protected void updateItem(Date item, boolean empty)
{
super.updateItem(item, empty);
if (item == null || empty)
{
setText(null);
} else
{
if (!LocalDate.now().isBefore(item.toLocalDate()))
{
setTextFill(Color.RED);
} else
{
setTextFill(Color.BLACK);
}
setText(new SimpleDateFormat(DATE_FORMAT).format(item));
}
}
};
return cell;
});
followupCol.setCellFactory((表p列)->
{
TableCell单元格=新的TableCell()
{
@凌驾
受保护的void updateItem(日期项,布尔值为空)
{
super.updateItem(项,空);
如果(项==null | |空)
{
setText(空);
}否则
{
如果(!LocalDate.now().isBefore(item.toLocalDate()))
{
setTextFill(颜色为红色);
}否则
{
setTextFill(颜色:黑色);
}
setText(新的SimpleDataFormat(日期格式).FORMAT(项目));
}
}
};
返回单元;
});
由于java.sql.Date
已经是可比的
,您可以使用
followupCol.setComparator(Comparator.nullsLast(Comparator.naturalOrder()));