Galera, to precisando comparar 2 objetos de mesmo tipo pelo atributo “nome”, para que eu possa organizar o meu array em ordem alfabética.
So que eu não sei que condição colocar no comparator para dizer que o nome vem andes ou depois do outro.
public int compare(Aluno o1, Aluno o2) {
return o1.getNome().compareTo(o2.getNome());
}
Decrescente, [ Z --> A]
public int compare(Aluno o1, Aluno o2) {
return o2.getNome().compareTo(o1.getNome());
}
J
jonjts
ok, Josemar Jobs so que o meu compareTo ja ta implementado comparando o codigo do aluno.
olha aê como ta a classe aluno
publicclassAlunoimplementsComparable<Aluno>,Serializable,Comparator<Aluno>{privateintmatricula;privateStringnome;privateArvoreBusca<Livro>livros=newArvoreBusca<Livro>();publicArvoreBusca<Livro>livro(){returnAluno.this.livros;}publicAluno(intmatricula,Stringnome){this.matricula=matricula;this.nome=nome;}publicAluno(intmatricula){this.matricula=matricula;}publicintcompareTo(Alunoobj){if(getMatricula()<((Aluno)obj).getMatricula()){return-1;}elseif(getMatricula()==((Aluno)obj).getMatricula()){return0;}else{return1;}}publicvoidadd_livro(Livrolivro){livros.add(livro);}publicbooleanremouve_livro(Livrolivro){returnAluno.this.livros.remove(livro);}@OverridepublicinthashCode(){returnthis.matricula;}/** * @return the matricula */publicintgetMatricula(){returnmatricula;}/** * @return the nome */publicStringgetNome(){returnnome;}publicintcompare(Alunoo1,Alunoo2){if(o1.getNome().equals(o2.getNome())){return0;}//codigo...}