2014-11-06 112 views
1

我LabResults对象的名单,我想基于列表对象数据进行排序,这是我收集排序列表对象基于对象的数据类型

public class LabResult implements Serializable{ 

private String id; 
private String name; 
private String unit; 
private String abnormal; //Contains String either "A" or "N" 

} 
private List<LabResult> mLabResults; 

我想对列表进行排序,以显示异常=“ A”在列表视图的顶部和休息根据该 任何一个可以建议我怎么做,在Java/Android的

回答

4

使用比较

public class LabResultComparator implements Comparator<LabResult> { 
    public int compare(LabResult p1, LabResult p2) { 
     return p1.abnormal.compareTo(p2.abnormal); 
    } 
} 

的compareTo retuns 0,如果两个字符串相等,如果p1.abnormal大于p2.abnormal,则值小于0,反之亦然。

+1

您可以像使用'Collections.sort(mLabResults,new LabResultComparator());' – cliffroot 2014-11-06 14:31:58

+0

@cliffroot,感谢您的输入 – Blackbelt 2014-11-06 14:33:52

+0

谢谢,它的工作 – kondal 2014-11-07 06:13:52