Java自学笔记——TreeSet

本文是Java自学笔记的一部分,主要探讨TreeSet的特点,包括无参构造器创建的无序特性以及如何通过自定义比较器进行排序。同时,文章也提及了TreeMap的原理,指出它与TreeSet的相似之处,特别是在键值对存储和判断对象相等的方式。最后,文章提到了在选择集合时应考虑的因素。
摘要由CSDN通过智能技术生成

Java自学笔记——TreeSet

TreeSet特点

  1. 无参构造器 仍然是无序的
  2. 使用TreeSet构造器,可以传入一个比较器(匿名内部类),指定排序规则

无参构造器 以添加对象实现的Compareable接口的compareTo
Comparable<? super K> k = (Comparable<? super K>) key
使用TreeSet构造器,可以传入一个比较器(匿名内部类),去重时按这个方法去重,而不是调用equals()

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

/**
 * @author Lspero
 * @version 1.0
 */
@SuppressWarnings("all")
public class TreeSet_ {
   
    public static void main(String[] args) {
   
        TreeSet treeSet = new TreeSet(new Comparator() {
   
            @Override
            public int compare(Object o1, Object o2) {
   
                //调用字符串String的compareTo方法进行字符串大小比较
                return ((String) o2).compareTo((String) o1);
                //按字符串长度排序
                //return ((String) o2).length() - ((String) o1).length();
            }
        });
        treeSet.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值