AD

¿Ya dominas lo básico? Un curso estructurado de Java es la vía rápida para dar el salto.

Ver cursos de Java en Udemy

Enlace de afiliado. No te cuesta nada extra.

Lecciones de Java
Lección 27 / 68

Trabajar con HashSet (conjuntos)

En esta lección guardarás elementos sin permitir repetidos.

Un HashSet no admite duplicados y no garantiza ningún orden. add() devuelve falso si el elemento ya estaba, y contains() responde en tiempo prácticamente constante.

El código de ejemplo añade elementos repetidos y muestra cuántos quedan.

La rapidez de contains() es la razón de usarlo: en una lista, buscar recorre todo; en un conjunto, se calcula directamente dónde estaría. Con muchos elementos y muchas búsquedas, la diferencia es de otro orden de magnitud.

El requisito que lo hace funcionar: los objetos propios deben redefinir equals() y hashCode(). Redefinir solo uno rompe el conjunto de forma silenciosa — se cuelan duplicados o desaparecen elementos. Si necesitas orden, existen LinkedHashSet (orden de inserción) y TreeSet (ordenado).

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar Java directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)