Boa Noite pessoal to fazendo um exercicio só ta dando erro no método sort.
Tenho um vetor de objects e quero ordernar o mesmo mais tá dando erro
classe jogador cannot be cast to java.lang.Comparable.
Só não entendo o motivo do erro.no caso eu tenho um objeto do tipo jogador dentro de um vetor de objetor do tipo time,tem algum problema para usar o sort?
to colocando um pedaço das fonte,caso alguém puder ajudar a tirar a minha duvida,ou se eu to fazendo alguma cagada.
deste já obrigadoo.
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
public class Time implements Comparable {
ArrayList time = new ArrayList();
String nome;
private String cidadeSede;
private String nomeClube;
public void adiciona(Jogador jogador) {
time.add(jogador);
}
Time(String nomeClube, String cidadeSede) {
this.nomeClube = nomeClube;
this.cidadeSede = cidadeSede;
}
void ordenar() {
Jogador[] t = new Jogador[2];
for (int i = 0; i < time.size(); i++) {
t[i] = (Jogador) time.get(i);
}
Arrays.sort(t);
}
public int compareTo(Object o) {
Jogador c = (Jogador) o;
return nome.compareTo(c.getNome());
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
}
import java.util.Arrays;
public class Jogador {
private String nome;
public boolean titular;
private String posição;
private double salario;
private double novoSalario;
public double getSalario() {
return salario;
}
public void setSalario(double salario) {
this.salario = salario;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getPosição() {
return posição;
}
public void setPosição(String posição) {
this.posição = posição;
}
public boolean isTitular() {
return titular;
}
public void setTitular(boolean titular) {
this.titular = titular;
}
}