中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

TreeSet如何實現自定義排序

小樊
86
2024-06-26 22:03:01
欄目: 編程語言

要實現自定義排序,需要在創建TreeSet對象時傳入一個Comparator對象,該對象定義了元素的比較規則。

例如,假設有一個類Person,需要按照年齡從小到大排序:

import java.util.Comparator;
import java.util.TreeSet;

class Person {
    String name;
    int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public int getAge() {
        return age;
    }
}

public class Main {
    public static void main(String[] args) {
        TreeSet<Person> treeSet = new TreeSet<>(new Comparator<Person>() {
            @Override
            public int compare(Person p1, Person p2) {
                return Integer.compare(p1.getAge(), p2.getAge());
            }
        });

        treeSet.add(new Person("Alice", 25));
        treeSet.add(new Person("Bob", 30));
        treeSet.add(new Person("Charlie", 20));

        for (Person person : treeSet) {
            System.out.println(person.getName() + " " + person.getAge());
        }
    }
}

在上面的代碼中,創建了一個TreeSet對象treeSet并傳入了一個Comparator對象,定義了按照Person對象的age屬性進行排序的規則。最后輸出結果為:

Charlie 20
Alice 25
Bob 30

0
股票| 滨海县| 盐津县| 红原县| 四平市| 壶关县| 三明市| 临泉县| 泌阳县| 余干县| 衡阳市| 蒙阴县| 东乌| 永寿县| 德化县| 盐山县| 故城县| 简阳市| 邵阳县| 巩留县| 金门县| 万州区| 中卫市| 宜城市| 交口县| 麻城市| 南靖县| 安陆市| 洪湖市| 丹江口市| 石楼县| 方正县| 年辖:市辖区| 仪征市| 长海县| 仁化县| 中山市| 邻水| 黎川县| 德惠市| 清镇市|