Boa noite, já tentei rodar o próprio código que fornecem mas não ordena, alguém poderia por favor me ajudar passando o código das outras classe para eu ver o que errei. O código copila mas não ordena. Segue abaixo o código que usei.
//Código fornecido pela alura
public class TestaOrdenacao {
public static void main(String[] args) {
List<ContaPoupanca> contas = new ArrayList<ContaPoupanca>();
ContaPoupanca c1 = new ContaPoupanca(400, "Caio");
c1.deposita(1500.0);
contas.add(c1);
ContaPoupanca c2 = new ContaPoupanca(467, "Adriano");
c2.deposita(2050.99);
contas.add(c2);
ContaPoupanca c3 = new ContaPoupanca(230, "Victor");
c3.deposita(1070.0);
contas.add(c3);
Collections.sort(contas);
for (ContaPoupanca conta : contas) {
System.out.println(conta);
}
}
}
//Minha classe conta atual
public class Conta {
protected int numero;
private double saldo;
private String nome;
public void deposita(double valor){
this.saldo += valor;
}
public void saca(double valor){
if(valor < saldo){
this.saldo -= valor;
} else{
System.out.println("Não foi possÃvel sacar.");
}
}
public double getsaldo() {
return this.saldo;
}
public String toString() {
return this.nome + " Tem uma conta com valor: " + this.saldo;
}
public Conta(){
}
public Conta(double saldo, String nome) {
this.saldo = saldo;
this.nome = nome;
}
public int getNumero() {
return this.numero;
}
public double getSaldo() {
return this.saldo;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
}
//Minha classe ContaPoupanca atual
public class ContaPoupanca extends Conta implements Comparable<ContaPoupanca> {
public ContaPoupanca() {
}
public ContaPoupanca(double saldo, String nome) {
super(saldo, nome);
}
@Override
public int compareTo(ContaPoupanca outra) {
return this.getNumero() - outra.getNumero();
}
}