Pessoal,
qndo usamos um list fazemos List x = new arrayList();
e qndo usamos um Set? Como fica?
Set x = … ?
Pessoal,
qndo usamos um list fazemos List x = new arrayList();
e qndo usamos um Set? Como fica?
Set x = … ?
Exato.
Mas a minha dúvida é exatamente essa, pq n posso fazer Set<Classe> x = new Set<Classe>();
Mas a minha dúvida é exatamente essa, pq n posso fazer Set<Classe> x = new Set<Classe>();[/quote]
porque Set é uma Interface.
abraço.
Mas a minha dúvida é exatamente essa, pq n posso fazer Set<Classe> x = new Set<Classe>();[/quote]
porque Set é uma Interface.
abraço.[/quote]
Entao o correto é fazer:
Set<Classe> x = new HashSet<Classe>(); ?
Repare que aqui vc não faz um new List, e sim um new ArrayList. Isso pq List é uma interface e não pode ser instanciada, mas pode ser declarada como um tipo de referência.
amigao vc pode usar tanto:
new TreeSet<Classe>();
quanto:
new LinkedHashSet<Classe>();
ou:
new HashSet<Classe>();
lembrando que HashSet é um conjunto nao classificado e nao ordenado, LinkedHashSet é ordenado por ordem de inserção e TreeSet é classificado por ordem natural…
a caelum disponibiliza um material legal sobre o assunto
http://caelum.com.br/curso/cs-14-algoritmos-estruturas-dados-java/