创建带有自定义比较器的 TreeSet 的 Java 程序


为了创建具有自定义比较器的 TreeSet,首先让我们创建一个 Integer 数组,并将其设置为 TreeSet

Integer arr[] = { 10, 20, 30, 40, 50, 60, 70, 80, 90, 100 };
Set<Integer> set = new TreeSet<Integer>(Collections.reverseOrder());

上面,我们使用了按 reverseOrder() 排序的比较器,该比较器返回一个施加自然排序逆序的比较器。

示例

import java.util.Collections;
import java.util.Set;
import java.util.TreeSet;
public class Demo {
   public static void main(String args[]) throws Exception {
      Integer arr[] = { 10, 20, 30, 40, 50, 60, 70, 80, 90, 100 };
      Set<Integer> set = new TreeSet<Integer>(Collections.reverseOrder());
      for (int i = 0, n = arr.length; i < n; i++) {
         set.add(arr[i]);
      }
      System.out.println("TreeSet = "+set);
      System.out.println(((TreeSet<Integer>) set).comparator());
   }
}

输出

TreeSet = [100, 90, 80, 70, 60, 50, 40, 30, 20, 10]
java.util.Collections$ReverseComparator@6276ae34

更新于:2019 年 7 月 30 日

245 次浏览

开启你的 职业 生涯

通过完成课程获得认证

开始
广告
© . All rights reserved.