• Java学习之TreeSet


    Java TreeSet

    在这里插入图片描述
    底层是红黑树实现

    将元素插入TreeSet

    add() - 将指定的元素插入集合

    addAll() - 将指定集合的所有元素插入集合

    
    import java.util.TreeSet;
    
    class Main {
        public static void main(String[] args) {
    
            TreeSet<Integer> evenNumbers = new TreeSet<>();
    
            // 使用 the add() 方法
            evenNumbers.add(2);
            evenNumbers.add(4);
            evenNumbers.add(6);
            System.out.println("TreeSet: " + evenNumbers);
    
            TreeSet<Integer> numbers = new TreeSet<>();
            numbers.add(1);
    
            // 使用 the addAll() 方法
            numbers.addAll(evenNumbers);
            System.out.println("新的TreeSet: " + numbers);
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22

    输出结果

    TreeSet: [2, 4, 6]
    新的TreeSet: [1, 2, 4, 6]

    访问TreeSet元素

    要访问树集的元素,我们可以使用iterator()方法。为了使用这种方法,我们必须导入java.util.Iterator包。

    
    import java.util.TreeSet;
    import java.util.Iterator;
    
    class Main {
        public static void main(String[] args) {
            TreeSet<Integer> numbers = new TreeSet<>();
            numbers.add(2);
            numbers.add(5);
            numbers.add(6);
            System.out.println("TreeSet: " + numbers);
    
            // 调用 iterator() 方法
            Iterator<Integer> iterate = numbers.iterator();
            System.out.print("TreeSet使用迭代器: ");
            //访问元素
            while(iterate.hasNext()) {
                System.out.print(iterate.next());
                System.out.print(", ");
            }
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22

    输出结果

    TreeSet: [2, 5, 6]
    TreeSet使用迭代器: 2, 5, 6,

    导航方法

    first()和last()方法
    first() - 返回集合的第一个元素
    last() - 返回集合的最后一个元素
    Higher(element) - 返回大于指定元素(element)的最小元素。
    lower(element) - 返回小于指定元素(element)的最大元素。
    ceiling(element) - 返回大于指定元素(element)的那些元素中的最小元素。如果传递的元素(element)存在于树集中,则返回作为参数传递的元素(element)。
    floor(element) - 返回小于指定元素(element)的元素中最大的元素。如果传递的元素(element)存在于树集中,则返回作为参数传递的元素(element)。

    import java.util.TreeSet;
    
    class Main {
        public static void main(String[] args) {
            TreeSet<Integer> numbers = new TreeSet<>();
            numbers.add(2);
            numbers.add(5);
            numbers.add(4);
            numbers.add(6);
            System.out.println("TreeSet: " + numbers);
    
            // 使用 higher()
            System.out.println("使用 higher: " + numbers.higher(4));
    
            // 使用 lower()
            System.out.println("使用 lower: " + numbers.lower(4));
    
            // 使用 ceiling()
            System.out.println("使用 ceiling: " + numbers.ceiling(4));
    
            // 使用 floor()
            System.out.println("使用 floor: " + numbers.floor(3));
    
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25

    输出结果

    TreeSet: [2, 4, 5, 6]
    使用 higher: 5
    使用 lower: 2
    使用 ceiling: 4
    使用 floor: 2

  • 相关阅读:
    博客园众包平台:嵌入式开发任务悬赏5万,招募开发者接单
    【ESP 保姆级教程】疯狂点灯篇 —— 案例:ESP8266 + 风扇 + 按键(模拟按键控制电器设备开关)
    实验五 熟悉 Hive 的基本操作
    【Java 进阶篇】HTML DOM样式控制详解
    PostgreSQL元命令介绍
    NoSQL之 Redis配置与优化
    复数类。。
    北邮22级信通院数电:Verilog-FPGA(10)第十周实验 实现移位寄存器74LS595(仿真方法验证)
    【语义分割】语义分割概念及算法介绍
    想玩配音的小伙伴,赶快来试试这个款配音神器~
  • 原文地址:https://blog.csdn.net/yusude123456/article/details/133829587