Ordenar Vetor de Objetos

Ae pessoal, eu tenho um vetor do tipo candidato com nome(String) e votos(int), posso ordenar o vetor pela quantidade de votos?

Vlew

claro, tu pode fazer um método bubble sort da vida, pegando o getVotos() de cada candidato… nao tem diferença nenhuma de qualquer outra ordenação, o criterio só vai ser o getVotos(), ao invéz do conteudo de cada posição do vetor…(como vc devia fazer nas primeiras aulas hehe)

É melhor usar um Comparator ou fazer Candidato ser Comparable e depois usar alguns metodos para comparação. Com Comparator fica algo assim:

[code]import java.util.*;

public CandidatoComparator implements Comparator {
public int compare(Object obj1, Object obj2) {
Candidato c1 = (Candidato)obj1;
Candidato c2 = (Candidato)obj2;

	int result = -1;
	if(c1.getvotos() > c2.getVotos()) {
		result = 1;
	}	else if (c1.getvotos() == c2.getVotos()){
		result = 0;
	}
	return result;
}

public boolean equals(Object other) {
	return other == this || other instanceof CandidatoComparator;
}

}[/code]
E na hora de ordenar seu Vector:

Comparator comparator = new CandidatoComparator(); Collections.sort(vectorCandidator, comparator);
Claro, vc poderia melhorar o Comparator criando-o com algum paremetro que indicasse se a ordenação e ascendente ou descendente.

valeuz…