Sets são estruturas de dados que representam um conjunto de dados. Nos conjunto apenas elementos diferentes são armazenados.
O Java possui diferentes implementação para a interface Set, veja um pouco mais de cada uma:
O(1)
)equals
e hashcode
para comparar elementosExemplo de uso:
Set<Integer> conjunto = new HashSet<Integer>();
conjunto.add(1);
conjunto.add(1);
conjunto.add(2);
conjunto.forEach(System.out::println);
O(1)
). Porém costuma ser um pouco mais lento que o HashSet