Meu código está apontando o seguinte erro quando é executado: UnsupportedOperationException.
nenhum erro de sintaxe é apontado, alguém sabe o que pode ser??
Meu código está apontando o seguinte erro quando é executado: UnsupportedOperationException.
nenhum erro de sintaxe é apontado, alguém sabe o que pode ser??
Oi Daniel,
Como está o seu código? Posta aqui para darmos uma olhada?
Abraço!
class ContaPoupanca extends Conta implements Comparable<Conta> {
public ContaPoupanca(String nome, int numero) {
super(nome, numero);
}
public int ComapareTo(ContaPoupanca outra){
return this.getNumero() - outra.getNumero();
}
@Override
public void atualiza(double taxa) {
this.saldo += this.saldo * (taxa * 3);
}
@Override
public void deposita(double valor) throws ValorInvalidoException {
if(valor < 0){
throw new ValorInvalidoException(valor);
}
else{
this.saldo += valor - 0.10;
}
}
@Override
double atualiza() {
throw new UnsupportedOperationException("Not supported yet.");
}
public int compareTo(ContaPoupanca t) {
throw new UnsupportedOperationException("DEU RUIM.");
}
}
public class TestaOrdenacao {
public static void main(String args[]) throws ValorInvalidoException{
List<ContaPoupanca> contas = new ArrayList<>();
ContaPoupanca c1 = new ContaPoupanca("Daniel", 10);
c1.deposita(1500.0);
contas.add(c1);
ContaPoupanca c2 = new ContaPoupanca("Paula", 11);
c2.deposita(1000.0);
contas.add(c2);
ContaPoupanca c3 = new ContaPoupanca("Géssica", 12);
c3.deposita(1300.0);
contas.add(c3);
ContaPoupanca c4 = new ContaPoupanca("Joseph", 13);
c4.deposita(3000.0);
contas.add(c4);
ContaPoupanca c5 = new ContaPoupanca("Bruno", 14);
c5.deposita(2500.0);
contas.add(c5);
Collections.sort(contas);
for(ContaPoupanca conta : contas){
System.out.println(conta);
}
}
}
Boa noite Daniel,
Para a realização do sort
uma das maneiras é você implementar a seguinte interface:
public interface Comparable<T> {
public int compareTo(T o);
}
(Como você fez)
Collections.sort(contas);
Entretanto sua implementação do método esta lançando a exeção, então o comportamento atual já é esperado.
public int compareTo(ContaPoupanca t) {
throw new UnsupportedOperationException("DEU RUIM.");
}
Para que não ocorra isso você deve implementar o método da forma que deseja que sua coleção seja ordenada.
Espero ter contribuído. =)