Olá pessoal,
Estou estudando o Collections Framework, pegando a documentação, fazendo exemplos e talz e em um desses exemplos eu tive uma resposta bem estranha…
Eu fiz um exemplo utilizando um objeto TreeSet e o mesmo ao ser exibido na tela, só exibe um objeto nele armazenado e não os três que foram armazenados…
O código está abaixo:
[code]import java.util.TreeSet;
public class TesteTreeSet {
public static void main(String[] args) {
new TesteTreeSet().comeca();
}
private void comeca() {
TreeSet<Livro> livroSet = new TreeSet<Livro>();
livroSet.add(new Livro("Livro1"));
livroSet.add(new Livro("Livro2"));
livroSet.add(new Livro("Livro3"));
System.out.println("Livros inseridos em um TreeSet: ");
//System.out.println(livroSet);
for (Livro percSet : livroSet) {
System.out.println(percSet.getNome());
}
}
}[/code]
A Classe Livro:
[code]public class Livro implements Comparable {
private String nome;
public Livro(String n) {
this.nome = n;
}
public String getNome() {
return this.nome;
}
public int compareTo(Object l) {
Livro livro = (Livro) l;
return livro.getNome().compareTo(livro.getNome());
}
}[/code]
Compilando e executando a Classe TesteTreeSet eu tenho a saída abaixo:
Livros inseridos em um TreeSet:
Livro1
Deveria aparecer os outros dois livros, mas não aparecem…
Se alguém souber me ajudar a entender o porque disso, ficaria muito grato…
Abraço…
