Java学习之TreeSet

Java TreeSet

Java学习之TreeSet_第1张图片
底层是红黑树实现

将元素插入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);
    }
}

输出结果

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(", ");
        }
    }
}

输出结果

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));

    }
}

输出结果

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

你可能感兴趣的:(java,学习,开发语言)