English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutoriales básicos de Java

Control de flujo de Java

Java array

Java orientado a objetos (I)

Java orientado a objetos (II)

Java orientado a objetos (III)

Manejo de excepciones en Java

Java Lista (List)

Java Queue (cola)

Colección Map de Java

Colección Set de Java

Entrada y salida de Java (I/O)

Lector de Java/Writer

Otras materias de Java

Java Set 接口

En este tutorial, aprenderemos la interfaz Set y sus métodos en Java.

La interfaz Set de la plataforma Java Collections proporciona las funciones de conjuntos matemáticos en Java. Hereda la interfaz Collection.

Diferente de la interfaz List, la colección Set no puede contener elementos repetidos.

Clases que implementan Set

Dado que Set es una interfaz, no se puede crear un objeto a partir de ella.

Para usar las funciones del interfaz Set, podemos usar las siguientes clases:

Estas clases están definidas y implementadas en el marco Collections y cumplen con la interfaz Set.

Interfaz que hereda de Set

Esta interfaz Set también extiende estos subinterfaz:

¿Cómo usar Set?

En Java, debe importar el paquete java.util.Set para usar Set.

//Implementar Set con HashSet
Set<String> animals = new HashSet<>();

Aquí, creamos un Set llamado animals. Ya hemos utilizado HashSet para implementar la interfaz Set.

Métodos de Set

La interfaz Set contiene todos los métodos de la interfaz Collection. Esto se debe a que Collection es la interfaz superclase de Set.

La interfaz Set también proporciona algunos métodos comunes de la interfaz Collection:

  • add() - Añadir el elemento especificado a la colección

  • addAll() - Añadir todos los elementos de la colección especificada a la colección

  • iterator() -Devuelve un iterador que se puede usar para acceder en orden a los elementos de la colección

  • remove() - Remover todos los elementos de la colección

  • removeAll() - Elimina todos los elementos que existen en otro conjunto especificado

  • keepAll()  -Mantiene todos los elementos que aún existen en otro conjunto especificado

  • clear() - Elimina todos los elementos del conjunto

  • size() - Devuelve la longitud del conjunto (número de elementos)

  • toArray() - Devuelve un array que contiene todos los elementos del conjunto

  • contains() -  Devuelve true si el conjunto contiene el elemento especificado

  • containsAll() - Devuelve true si el conjunto contiene todos los elementos del conjunto especificado

  • hashCode() -Devuelve el valor de hash (la dirección de los elementos del conjunto)

Operaciones de conjunto Set

La interfaz Set de Java nos permite realizar operaciones matemáticas básicas de conjuntos, como la unión, la intersección y el subconjunto.

  • Unión - Para obtener la unión de dos conjuntos x e y, podemos usar x.addAll(y)

  • Intersección - Para obtener la intersección de dos conjuntos x e y, podemos usar x.retainAll(y)

  • Subconjunto - Para verificar si x es un subconjunto de y, podemos usar y.containsAll(x)

Implementación de la interfaz Set

1.Implementar la interfaz Set

import java.util.Set;
import java.util.HashSet;
class Main {
    public static void main(String[] args) {
        //Crear un conjunto utilizando la clase HashSet
        Set<Integer> set1 = new HashSet<>();
        //Añadir elementos al set1
        set1.add(2);
        set1.add(3);
        System.out.println("Set1: " + set1);
        //Crear otro conjunto utilizando la clase HashSet
        Set<Integer> set2 = new HashSet<>();
        //Añadir elemento
        set2.add(1);
        set2.add(2);
        System.out.println("Set2: " + set2);
        //La unión de dos conjuntos
        set2.addAll(set1);
        System.out.println("La unión es: " + set2);
    }
}

Resultados de salida

Set1: [2, 3]
Set2: [1, 2]
La unión es: [1, 2, 3]

Para obtener más información sobre HashSet, visiteJava HashSet.

2.Implementar la clase TreeSet

import java.util.Set;
import java.util.TreeSet;
import java.util.Iterator;
class Main {
    public static void main(String[] args) {
        //Crear un conjunto utilizando la clase TreeSet
        Set<Integer> numbers = new TreeSet<>();
        // Añadir elementos al conjunto set
        numbers.add(2);
        numbers.add(3);
        numbers.add(1);
        System.out.println("TreeSet: " + numbers);
        //Acceder a los elementos utilizando iterator()
        System.out.print("Acceder a los elementos usando iterator(): ");
        Iterator<Integer> iterate = numbers.iterator();
        while(iterate.hasNext()) {
            System.out.print(iterate.next());
            System.out.print(", ");
        }
    }
}

Resultados de salida

TreeSet: [1, 2, 3]
Acceder a los elementos usando iterator(): 1, 2, 3,

Para obtener más información sobre TreeSet, visiteJava TreeSet.

Ahora que sabemos qué es Set, en los siguientes tutoriales veremos su implementación en clases como EnumSet, HashSet, LinkedHashSet y TreeSet.