现在我正在使用比较器对我的对象进行排序。我的列表中的项目如下
FIRST ITEM
SECOND ITEM
THIRD ITEM
LAST ITEM
FORTH ITEM
比较器代码是:
public static Comparator<PartyResultVO> sortData = new Comparator<PartyResultVO>()
{
public int compare(VO vo1, VO vo2)
return (vo1.getName()).compareTo(vo2.getName());
};
它可以完美地进行排序。但是我想要的是我需要将名为 LAST ITEM
的项目放在最后。我如何才能仅排除该对象并放在最后。有吗任何方法都可以做到这一点。
请帮助我。提前致谢...
最佳答案
您可以为这种情况添加特殊逻辑:
public static Comparator<VO> sortData = new Comparator<VO>()
{
public int compare(VO vo1, VO vo2) {
if (vo1.getName().equals("LAST ITEM")) {
if (vo2.getName().equals("LAST ITEM")) {
return 0;
} else {
return 1;
}
else if (vo2.getName().equals("LAST ITEM")) {
return -1;
}
return (vo1.getName()).compareTo(vo2.getName());
}
};
关于java - 使用比较器时如何排除字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16603601/