Você está aqui: Java ::: Coleções (Collections) ::: Passos Iniciais |
Entendendo a interface Set<E>Quantidade de visualizações: 19244 vezes |
A interface Set representa um coleção que não contém elementos duplicados. Mais formalmente, sets não contém pares de elementos e1 e e2, de modo que e1.equals(e2), e no mínimo um elemento null. Como seu nome diz, esta interface modela a abstração matemática de conjuntos. Entre as classes que implementam esta interface podemos citar: AbstractSet, ConcurrentSkipListSet, CopyOnWriteArraySet, EnumSet, HashSet, JobStateReasons, LinkedHashSet e TreeSet. A interface Set acrescenta algumas estipulações, além daquelas herdadas da interface Collection, nos contratos de todos os construtores e nos contratos dos métodos add, equals e hashCode. A estipulação adicional nos construtores é de que os construtores devem criar um conjunto que não contenha elementos duplicados. Obs: Muito cuidado deve ser tomado se objetos mutáveis forem usados como elementos de conjuntos. O comportamente de um conjunto não é especificado se o valor de um objeto é alterado de forma a afetar a comparação equals enquanto o objeto for um elemento do set. Um caso especial desta proibição é que não é permitido que um set contenha a si mesmo como elemento. Algumas implementações de set apresentam restrições em relação aos elementos que elas podem conter. Por exemplo, algumas implementações não aceitam o elemento null, e algumas têm restrições em relação ao tipo de seus elementos. Tentar adicionar um elemento não permitido pode atirar uma exceção não verificada, geralmente NullPointerException ou ClassCastException. Tentar verificar a presença de um elemento não permitido pode atirar uma exceção, ou simplesmente retornar false; algumas implementações podem exibir o primeiro comportamento e outras podem exibir o segundo. Mais comumente, tentar um operação em um elemento não permitido, cuja finalização não resultaria na inserção do elemento não permitido no set, pode atirar uma exceção ou obter sucesso. Tudo depende das opções fornecidas pela implementação. Tais exceções são marcadas "optional" em sua especificação. |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
Python - Como calcular o limite de uma função usando Python e a biblioteca Sympy - Python para Engenharia |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |