Java : TreeSet con ejemplos

TreeSet (Java SE 23 & JDK 23) en Java con ejemplos.
Encontrará muestras de código para la mayoría de los métodos TreeSet<E>.

Nota :


Summary

Una implementación de NavigableSet basada en un TreeMap. Los elementos se ordenan según su orden natural o mediante un Comparator proporcionado en el momento de creación del conjunto, según el constructor que se utilice. (Traducción automática)

Class diagram

final var set = new TreeSet<String>();
System.out.println(set); // []
System.out.println(set.isEmpty()); // true

set.add("a");
set.add("b");
set.add("c");

System.out.println(set); // [a, b, c]
System.out.println(set.size()); // 3

System.out.println(set.contains("a")); // true
System.out.println(set.contains("b")); // true
System.out.println(set.contains("x")); // false
final var treeSet = new TreeSet<String>();
treeSet.add("ccc");
treeSet.add("ddd");
treeSet.add("aaa");
treeSet.add("bbb");

System.out.println(treeSet); // [aaa, bbb, ccc, ddd]

final var hashSet = new HashSet<String>();
hashSet.add("ccc");
hashSet.add("ddd");
hashSet.add("aaa");
hashSet.add("bbb");

System.out.println(hashSet); // [aaa, ccc, bbb, ddd]

Constructors

TreeSet ()

Construye un nuevo conjunto de árboles vacíos, ordenados según el orden natural de sus elementos. (Traducción automática)

final var set = new TreeSet<String>();
System.out.println(set); // []
System.out.println(set.isEmpty()); // true

set.add("b");
set.add("a");
set.add("c");

System.out.println(set); // [a, b, c]
System.out.println(set.size()); // 3
final var set = new TreeSet<Integer>();

set.add(100);
set.add(999);
set.add(-200);

System.out.println(set); // [-200, 100, 999]

TreeSet (Collection<? extends E> c)

Construye un nuevo conjunto de árboles que contienen los elementos de la colección especificada, ordenados según el orden natural de sus elementos. (Traducción automática)

final var c = List.of("b", "a", "c");

final var set = new TreeSet<>(c);
System.out.println(set); // [a, b, c]
System.out.println(set.size()); // 3

TreeSet (Comparator<? super E> comparator)

Construye un nuevo conjunto de árboles vacíos, ordenados según el comparador especificado. (Traducción automática)

final var src = List.of("bbb", "aaa", "ccc");

final var set1 = new TreeSet<String>();
set1.addAll(src);
System.out.println(set1); // [aaa, bbb, ccc]

final var set2 = new TreeSet<String>(Comparator.reverseOrder());
set2.addAll(src);
System.out.println(set2); // [ccc, bbb, aaa]

TreeSet (SortedSet<E> s)

Construye un nuevo conjunto de árboles que contienen los mismos elementos y utilizan el mismo orden que el conjunto ordenado especificado. (Traducción automática)

final var s = new TreeSet<String>(Comparator.reverseOrder());
s.add("a");
s.add("b");
s.add("c");

System.out.println(s); // [c, b, a]

final var set = new TreeSet<>(s);
System.out.println(set); // [c, b, a]
System.out.println(set.size()); // 3

Methods

boolean add (E e)

Agrega el elemento especificado a este conjunto si aún no está presente. (Traducción automática)

final var set = new TreeSet<String>();
System.out.println(set); // []

System.out.println(set.add("a")); // true
System.out.println(set); // [a]

System.out.println(set.add("b")); // true
System.out.println(set); // [a, b]

System.out.println(set.add("c")); // true
System.out.println(set); // [a, b, c]

System.out.println(set.add("a")); // false
System.out.println(set); // [a, b, c]

boolean addAll (Collection<? extends E> c)

Agrega todos los elementos de la colección especificada a este conjunto. (Traducción automática)

final var src = Set.of("a", "b", "c");

{
    final var set = new TreeSet<>(src);
    System.out.println(set); // [a, b, c]

    System.out.println(set.addAll(Set.of("d", "e", "f"))); // true
    System.out.println(set);  // [a, b, c, d, e, f]
}
{
    final var set = new TreeSet<>(src);
    System.out.println(set); // [a, b, c]

    System.out.println(set.addAll(Set.of("a", "b", "c"))); // false
    System.out.println(set); // [a, b, c]
}
{
    final var set = new TreeSet<>(src);
    System.out.println(set); // [a, b, c]

    System.out.println(set.addAll(Set.of("a", "c", "e", "f"))); // true
    System.out.println(set); // [a, b, c, e, f]
}

void addFirst (E e)

Lanza una excepción UnsupportedOperationException. (Traducción automática)

final var set = new TreeSet<>();
System.out.println(set); // []

try {
    set.addFirst("aaa");
} catch (UnsupportedOperationException e) {
    System.out.println("UnsupportedOperationException!");
}

// Result
// ↓
//UnsupportedOperationException!

void addLast (E e)

Lanza una excepción UnsupportedOperationException. (Traducción automática)

final var set = new TreeSet<>();
System.out.println(set); // []

try {
    set.addLast("aaa");
} catch (UnsupportedOperationException e) {
    System.out.println("UnsupportedOperationException!");
}

// Result
// ↓
//UnsupportedOperationException!

E ceiling (E e)

Devuelve el elemento más pequeño de este conjunto mayor o igual que el elemento dado, o nulo si no existe dicho elemento. (Traducción automática)

final var set = new TreeSet<String>();
set.add("b");
set.add("d");
set.add("f");

System.out.println(set); // [b, d, f]

System.out.println(set.ceiling("a")); // b
System.out.println(set.ceiling("b")); // b
System.out.println(set.ceiling("c")); // d
System.out.println(set.ceiling("d")); // d
System.out.println(set.ceiling("e")); // f
System.out.println(set.ceiling("f")); // f
System.out.println(set.ceiling("g")); // null

void clear ()

Elimina todos los elementos de este conjunto. (Traducción automática)

final var set = new TreeSet<String>();
System.out.println(set); // []

set.add("a");
System.out.println(set); // [a]

set.add("b");
System.out.println(set); // [a, b]

set.clear();
System.out.println(set); // []

Object clone ()

Devuelve una copia superficial de esta instancia de TreeSet. (Traducción automática)

final var set = new TreeSet<String>();
set.add("a");
set.add("b");
set.add("c");

System.out.println(set); // [a, b, c]

final var cloned = set.clone();
System.out.println(cloned); // [a, b, c]
System.out.println(cloned.getClass()); // class java.util.TreeSet

Comparator<? super E> comparator ()

Devuelve el comparador utilizado para ordenar los elementos de este conjunto, o null si este conjunto utiliza el orden natural de sus elementos. (Traducción automática)

final var set = new TreeSet<String>();
System.out.println(set); // []

final var comparator = set.comparator();
System.out.println(comparator); // null
final var set = new TreeSet<String>(Comparator.reverseOrder());
System.out.println(set); // []

final var comparator = set.comparator();
System.out.println(Objects.equals(comparator, Comparator.reverseOrder())); // true
final var set = new TreeSet<>(String.CASE_INSENSITIVE_ORDER);
System.out.println(set); // []

final var comparator = set.comparator();
System.out.println(Objects.equals(comparator, String.CASE_INSENSITIVE_ORDER)); // true

boolean contains (Object o)

Devuelve verdadero si este conjunto contiene el elemento especificado. (Traducción automática)

final var set = new TreeSet<String>();
Collections.addAll(set, "a", "b", "c");
System.out.println(set); // [a, b, c]

System.out.println(set.contains("")); // false
System.out.println(set.contains("a")); // true
System.out.println(set.contains("b")); // true
System.out.println(set.contains("c")); // true

System.out.println(set.contains("X")); // false
System.out.println(set.contains("abc")); // false

Iterator<E> descendingIterator ()

Devuelve un iterador sobre los elementos de este conjunto en orden descendente. (Traducción automática)

final var set = new TreeSet<String>();
set.add("aaa");
set.add("bbb");
set.add("ccc");

System.out.println(set); // [aaa, bbb, ccc]

final var iterator = set.descendingIterator();

System.out.println("-- forEachRemaining --");
iterator.forEachRemaining(s -> {
    System.out.println(s);
});

// Result
// ↓
//-- forEachRemaining --
//ccc
//bbb
//aaa

NavigableSet<E> descendingSet ()

Devuelve una vista en orden inverso de los elementos contenidos en este conjunto. (Traducción automática)

final var set = new TreeSet<String>();
set.add("a");
set.add("b");
set.add("c");

System.out.println(set); // [a, b, c]

final var descSet = set.descendingSet();
System.out.println(descSet); // [c, b, a]

set.add("d");

System.out.println(set); // [a, b, c, d]
System.out.println(descSet); // [d, c, b, a]

descSet.remove("b");

System.out.println(set); // [a, c, d]
System.out.println(descSet); // [d, c, a]

E first ()

Devuelve el primer elemento (más bajo) actualmente en este conjunto. (Traducción automática)

final var set = new TreeSet<String>();
System.out.println(set); // []

set.add("b");

System.out.println(set); // [b]
System.out.println(set.first()); // b

set.add("c");

System.out.println(set); // [b, c]
System.out.println(set.first()); // b

set.add("a");

System.out.println(set); // [a, b, c]
System.out.println(set.first()); // a
final var set = new TreeSet<String>();
System.out.println(set); // []

try {
    set.first();
} catch (NoSuchElementException e) {
    System.out.println(e);
}

// Result
// ↓
//java.util.NoSuchElementException

E floor (E e)

Devuelve el elemento más grande de este conjunto menor o igual al elemento dado, o nulo si no existe dicho elemento. (Traducción automática)

final var set = new TreeSet<String>();
set.add("b");
set.add("d");
set.add("f");

System.out.println(set); // [b, d, f]

System.out.println(set.floor("a")); // null
System.out.println(set.floor("b")); // b
System.out.println(set.floor("c")); // b
System.out.println(set.floor("d")); // d
System.out.println(set.floor("e")); // d
System.out.println(set.floor("f")); // f
System.out.println(set.floor("g")); // f

SortedSet<E> headSet (E toElement)

Devuelve una vista de la parte de este conjunto cuyos elementos son estrictamente menores que toElement. (Traducción automática)

final var set = new TreeSet<String>();
set.add("x");
set.add("y");
set.add("z");

System.out.println(set); // [x, y, z]

final var headSet = set.headSet("z");
System.out.println(headSet); // [x, y]

set.add("a");

System.out.println(set); // [a, x, y, z]
System.out.println(headSet); // [a, x, y]

headSet.remove("x");

System.out.println(set); // [a, y, z]
System.out.println(headSet); // [a, y]
final var set = new TreeSet<String>();
set.add("a");
set.add("b");
set.add("c");

System.out.println(set); // [a, b, c]

System.out.println(set.headSet("a")); // []
System.out.println(set.headSet("b")); // [a]
System.out.println(set.headSet("c")); // [a, b]
System.out.println(set.headSet("d")); // [a, b, c]

NavigableSet<E> headSet (E toElement, boolean inclusive)

Devuelve una vista de la parte de este conjunto cuyos elementos son menores que (o iguales a, si inclusive es verdadero) toElement. (Traducción automática)

final var set = new TreeSet<String>();
set.add("x");
set.add("y");
set.add("z");

System.out.println(set); // [x, y, z]

final var headSet = set.headSet("y", true);
System.out.println(headSet); // [x, y]

set.add("a");

System.out.println(set); // [a, x, y, z]
System.out.println(headSet); // [a, x, y]

headSet.remove("x");

System.out.println(set); // [a, y, z]
System.out.println(headSet); // [a, y]
final var set = new TreeSet<String>();
set.add("a");
set.add("b");
set.add("c");

System.out.println(set); // [a, b, c]

System.out.println(set.headSet("a")); // []
System.out.println(set.headSet("a", true)); // [a]

System.out.println(set.headSet("b")); // [a]
System.out.println(set.headSet("b", true)); // [a, b]

System.out.println(set.headSet("c")); // [a, b]
System.out.println(set.headSet("c", true)); // [a, b, c]

System.out.println(set.headSet("d")); // [a, b, c]
System.out.println(set.headSet("d", true)); // [a, b, c]

E higher (E e)

Devuelve el elemento más pequeño de este conjunto estrictamente mayor que el elemento dado, o nulo si no existe dicho elemento. (Traducción automática)

final var set = new TreeSet<String>();
set.add("b");
set.add("d");
set.add("f");

System.out.println(set); // [b, d, f]

System.out.println(set.higher("a")); // b
System.out.println(set.higher("b")); // d
System.out.println(set.higher("c")); // d
System.out.println(set.higher("d")); // f
System.out.println(set.higher("e")); // f
System.out.println(set.higher("f")); // null
System.out.println(set.higher("g")); // null

boolean isEmpty ()

Devuelve verdadero si este conjunto no contiene elementos. (Traducción automática)

final var set = new TreeSet<String>();
set.add("a");
set.add("b");
set.add("c");

System.out.println(set); // [a, b, c]
System.out.println(set.isEmpty()); // false

set.clear();
System.out.println(set); // []
System.out.println(set.isEmpty()); // true

Iterator<E> iterator ()

Devuelve un iterador sobre los elementos de este conjunto en orden ascendente. (Traducción automática)

final var set = new TreeSet<String>();
set.add("aaa");
set.add("bbb");
set.add("ccc");

System.out.println(set); // [aaa, bbb, ccc]

final var iterator = set.iterator();

System.out.println("-- forEachRemaining --");
iterator.forEachRemaining(s -> {
    System.out.println(s);
});

// Result
// ↓
//-- forEachRemaining --
//aaa
//bbb
//ccc

E last ()

Devuelve el último elemento (más alto) actualmente en este conjunto. (Traducción automática)

final var set = new TreeSet<String>();
System.out.println(set); // []

set.add("b");

System.out.println(set); // [b]
System.out.println(set.last()); // b

set.add("a");

System.out.println(set); // [a, b]
System.out.println(set.last()); // b

set.add("c");

System.out.println(set); // [a, b, c]
System.out.println(set.last()); // c
final var set = new TreeSet<String>();
System.out.println(set); // []

try {
    set.last();
} catch (NoSuchElementException e) {
    System.out.println(e);
}

// Result
// ↓
//java.util.NoSuchElementException

E lower (E e)

Devuelve el elemento más grande de este conjunto estrictamente menor que el elemento dado, o nulo si no existe dicho elemento. (Traducción automática)

final var set = new TreeSet<String>();
set.add("b");
set.add("d");
set.add("f");

System.out.println(set); // [b, d, f]

System.out.println(set.lower("a")); // null
System.out.println(set.lower("b")); // null
System.out.println(set.lower("c")); // b
System.out.println(set.lower("d")); // b
System.out.println(set.lower("e")); // d
System.out.println(set.lower("f")); // d
System.out.println(set.lower("g")); // f

E pollFirst ()

Recupera y elimina el primer elemento (el más bajo), o devuelve nulo si este conjunto está vacío (operación opcional). (Traducción automática)

final var set = new TreeSet<String>();
set.add("a");
set.add("b");
set.add("c");

System.out.println(set); // [a, b, c]

System.out.println(set.pollFirst()); // a
System.out.println(set); // [b, c]

System.out.println(set.pollFirst()); // b
System.out.println(set); // [c]

System.out.println(set.pollFirst()); // c
System.out.println(set); // []

System.out.println(set.pollFirst()); // null

E pollLast ()

Recupera y elimina el último elemento (el más alto), o devuelve nulo si este conjunto está vacío (operación opcional). (Traducción automática)

final var set = new TreeSet<String>();
set.add("a");
set.add("b");
set.add("c");

System.out.println(set); // [a, b, c]

System.out.println(set.pollLast()); // c
System.out.println(set); // [a, b]

System.out.println(set.pollLast()); // b
System.out.println(set); // [a]

System.out.println(set.pollLast()); // a
System.out.println(set); // []

System.out.println(set.pollLast()); // null

boolean remove (Object o)

Elimina el elemento especificado de este conjunto si está presente. (Traducción automática)

final var src = Set.of("a", "b", "c");

{
    final var set = new TreeSet<>(src);
    System.out.println(set); // [a, b, c]

    System.out.println(set.remove("")); // false
    System.out.println(set); // [a, b, c]
}
{
    final var set = new TreeSet<>(src);
    System.out.println(set); // [a, b, c]

    System.out.println(set.remove("a")); // true
    System.out.println(set); // [b, c]
}
{
    final var set = new TreeSet<>(src);
    System.out.println(set); // [a, b, c]

    System.out.println(set.remove("b")); // true
    System.out.println(set); // [a, c]
}
{
    final var set = new TreeSet<>(src);
    System.out.println(set); // [a, b, c]

    System.out.println(set.remove("X")); // false
    System.out.println(set); // [a, b, c]
}

int size ()

Devuelve el número de elementos en este conjunto (su cardinalidad). (Traducción automática)

final var set1 = new TreeSet<String>();
System.out.println(set1); // []
System.out.println(set1.size()); // 0

final var set2 = new TreeSet<String>();
Collections.addAll(set2, "a", "b", "c");
System.out.println(set2); // [a, b, c]
System.out.println(set2.size()); // 3

Spliterator<E> spliterator ()

Crea un divisor con enlace tardío y resistencia a fallos rápidos sobre los elementos de este conjunto. (Traducción automática)

final var set = new TreeSet<String>();
set.add("aaa");
set.add("bbb");
set.add("ccc");

System.out.println(set); // [aaa, bbb, ccc]

final var spliterator = set.spliterator();

System.out.println("-- forEachRemaining --");
spliterator.forEachRemaining(s -> {
    System.out.println(s);
});

// Result
// ↓
//-- forEachRemaining --
//aaa
//bbb
//ccc

NavigableSet<E> subSet (E fromElement, boolean fromInclusive, E toElement, boolean toInclusive)

Devuelve una vista de la parte de este conjunto cuyos elementos van desde fromElement hasta toElement. (Traducción automática)

final var set = new TreeSet<String>();
set.add("x");
set.add("y");
set.add("z");

System.out.println(set); // [x, y, z]

final var subSet = set.subSet("a", true, "y", true);
System.out.println(subSet); // [x, y]

set.add("a");

System.out.println(set); // [a, x, y, z]
System.out.println(subSet); // [a, x, y]

subSet.remove("x");

System.out.println(set); // [a, y, z]
System.out.println(subSet); // [a, y]
final var set = new TreeSet<String>();
set.add("a");
set.add("b");
set.add("c");

System.out.println(set); // [a, b, c]

System.out.println(set.subSet("a", true, "c", true)); // [a, b, c]
System.out.println(set.subSet("a", true, "c", false)); // [a, b]
System.out.println(set.subSet("a", false, "c", true)); // [b, c]
System.out.println(set.subSet("a", false, "c", false)); // [b]

System.out.println(set.subSet("a", true, "a", false)); // []
System.out.println(set.subSet("a", true, "b", false)); // [a]
System.out.println(set.subSet("a", true, "c", false)); // [a, b]
System.out.println(set.subSet("a", true, "d", false)); // [a, b, c]

System.out.println(set.subSet("a", true, "d", false)); // [a, b, c]
System.out.println(set.subSet("b", true, "d", false)); // [b, c]
System.out.println(set.subSet("c", true, "d", false)); // [c]
System.out.println(set.subSet("d", true, "d", false)); // []

SortedSet<E> subSet (E fromElement, E toElement)

Devuelve una vista de la parte de este conjunto cuyos elementos van desde fromElement, inclusive, hasta toElement, exclusivo. (Traducción automática)

final var set = new TreeSet<String>();
set.add("x");
set.add("y");
set.add("z");

System.out.println(set); // [x, y, z]

final var subSet = set.subSet("a", "z");
System.out.println(subSet); // [x, y]

set.add("a");

System.out.println(set); // [a, x, y, z]
System.out.println(subSet); // [a, x, y]

subSet.remove("x");

System.out.println(set); // [a, y, z]
System.out.println(subSet); // [a, y]
final var set = new TreeSet<String>();
set.add("a");
set.add("b");
set.add("c");

System.out.println(set); // [a, b, c]

System.out.println(set.subSet("a", "a")); // []
System.out.println(set.subSet("a", "b")); // [a]
System.out.println(set.subSet("a", "c")); // [a, b]
System.out.println(set.subSet("a", "d")); // [a, b, c]

System.out.println(set.subSet("a", "d")); // [a, b, c]
System.out.println(set.subSet("b", "d")); // [b, c]
System.out.println(set.subSet("c", "d")); // [c]
System.out.println(set.subSet("d", "d")); // []

SortedSet<E> tailSet (E fromElement)

Devuelve una vista de la parte de este conjunto cuyos elementos son mayores o iguales a fromElement. (Traducción automática)

final var set = new TreeSet<String>();
set.add("a");
set.add("b");
set.add("c");

System.out.println(set); // [a, b, c]

final var tailSet = set.tailSet("b");
System.out.println(tailSet); // [b, c]

set.add("d");

System.out.println(set); // [a, b, c, d]
System.out.println(tailSet); // [b, c, d]

tailSet.remove("b");

System.out.println(set); // [a, c, d]
System.out.println(tailSet); // [c, d]
final var set = new TreeSet<String>();
set.add("a");
set.add("b");
set.add("c");

System.out.println(set); // [a, b, c]

System.out.println(set.tailSet("a")); // [a, b, c]
System.out.println(set.tailSet("b")); // [b, c]
System.out.println(set.tailSet("c")); // [c]
System.out.println(set.tailSet("d")); // []

NavigableSet<E> tailSet (E fromElement, boolean inclusive)

Devuelve una vista de la parte de este conjunto cuyos elementos son mayores que (o iguales a, si inclusive es verdadero) fromElement. (Traducción automática)

final var set = new TreeSet<String>();
set.add("a");
set.add("b");
set.add("c");

System.out.println(set); // [a, b, c]

final var tailSet = set.tailSet("a", false);
System.out.println(tailSet); // [b, c]

set.add("d");

System.out.println(set); // [a, b, c, d]
System.out.println(tailSet); // [b, c, d]

tailSet.remove("b");

System.out.println(set); // [a, c, d]
System.out.println(tailSet); // [c, d]
final var set = new TreeSet<String>();
set.add("a");
set.add("b");
set.add("c");

System.out.println(set); // [a, b, c]

System.out.println(set.tailSet("a")); // [a, b, c]
System.out.println(set.tailSet("a", false)); // [b, c]

System.out.println(set.tailSet("b")); // [b, c]
System.out.println(set.tailSet("b", false)); // [c]

System.out.println(set.tailSet("c")); // [c]
System.out.println(set.tailSet("c", false)); // []

Methods declared in AbstractSet

equals, hashCode, removeAll

Consulte el siguiente enlace.

Methods declared in AbstractCollection

containsAll, retainAll, toArray, toArray, toString

Consulte el siguiente enlace.

Methods declared in Collection

parallelStream, removeIf, stream, toArray

Consulte el siguiente enlace.

Methods declared in Iterable

forEach

Consulte el siguiente enlace.

Methods declared in NavigableSet

removeFirst, removeLast, reversed

Consulte el siguiente enlace.

Methods declared in Set

containsAll, equals, hashCode, removeAll, retainAll, toArray, toArray

Consulte el siguiente enlace.

Methods declared in SortedSet

getFirst, getLast

Consulte el siguiente enlace.


Related posts

To top of page