首页 > 解决方案 > 如何将姓氏作为第一级排序,将名字作为第二级排序

问题描述

在此代码中,仅根据姓氏进行排序。我需要做的是将姓氏作为第一级排序,将名字作为第二级排序。

   public int compare(Object aO1, Object aO2) {
    SearchResultAccount acct1 = (SearchResultAccount) aO1;
    String lastName1 = acct1.getLastName();
    SearchResultAccount acct2 = (SearchResultAccount) aO2;
    String lastName2 = acct2.getLastName();

    return lastName1.compareTo(lastName2);
}

我希望姓氏作为第一级排序,名字作为第二级排序

标签: javasorting

解决方案


public int compare(Object aO1, Object aO2)
{
    SearchResultAccount acct1 = (SearchResultAccount) aO1;
    SearchResultAccount acct2 = (SearchResultAccount) aO2;

    int lastNameComparision = acct1.getLastName().compareTo(acct2.getLastName());
    if (lastNameComparision != 0) {
        return lastNameComparision;
    } else {
        return acct1.getFirstName().compareTo(acct2.getFirstName());
    }     
}

推荐阅读