91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

Java中怎么按兩個字段排序

小億
209
2024-03-22 17:20:52
欄目: 編程語言

要按兩個字段對對象進行排序,可以使用Comparator接口來自定義比較規則。以下是一個示例代碼,按照對象的兩個字段進行排序:

假設有一個對象Person,其中包含兩個屬性:name和age。現在要按照name屬性進行首先排序,如果name相同,則按照age屬性進行排序。

import java.util.Comparator;

public class Person {
    private String name;
    private int age;

    // 構造方法、getter和setter方法省略

    // 自定義比較規則
    public static Comparator<Person> nameAndAgeComparator = new Comparator<Person>() {
        @Override
        public int compare(Person p1, Person p2) {
            int compareByName = p1.getName().compareTo(p2.getName());
            if (compareByName == 0) {
                return Integer.compare(p1.getAge(), p2.getAge());
            }
            return compareByName;
        }
    };
}

// 在使用時,可以使用Collections.sort()方法進行排序
List<Person> personList = new ArrayList<>();
personList.add(new Person("Alice", 25));
personList.add(new Person("Bob", 30));
personList.add(new Person("Alice", 20));

Collections.sort(personList, Person.nameAndAgeComparator);

在上面的代碼中,我們首先定義了一個nameAndAgeComparator比較器,它首先比較name屬性,如果name相同則再比較age屬性。然后在使用時,通過Collections.sort()方法進行排序,傳入比較器即可實現按照兩個字段排序的功能。

0
卢湾区| 华容县| 沧州市| 临沧市| 博客| 海城市| 灯塔市| 桂平市| 蓝田县| 建宁县| 水城县| 乌拉特中旗| 松潘县| 张北县| 富顺县| 周至县| 晋州市| 固安县| 利津县| 新安县| 咸宁市| 蚌埠市| 云霄县| 根河市| 搜索| 海门市| 宁城县| 高邑县| 岚皋县| 纳雍县| 丹阳市| 南投县| 荔浦县| 惠安县| 康乐县| 桐梓县| 华安县| 喜德县| 南宫市| 汝南县| 怀仁县|