我有一个字符串值列表。我用一个比较器通过特定的顺序对它们进行排序如下如何在排序结束时总是有空值
public static final List<String> CUSTOM_LIST = Arrays.asList("Red", "Green", "Blue");
comparator = new Comparator<String>(){
@Override
public int compare(final String o1, final String o2){
return Integer.valueOf(CUSTOM_LIST.indexOf(o1))
.compareTo(Integer.valueOf(CUSTOM_LIST.indexOf(o2)));
}
};
所以比较我做
Collections.sort(listToSort,comparator);
或者反向排序
Collections.sort(listToSort,Collections.reverseOrder(comparator));
现在我的名单有空值和我想让他们永远在最后。我如何实现这一目标?
是一个等于“”的空值还是为空?或两者? – htz 2013-03-13 15:16:07
我只有“”。 no null – outellou 2013-03-13 15:21:42
使用两个不同的比较器,而不是'reverseOrder()'。 – 2013-03-13 15:26:08