Estou tentando montar o exercício da aula 07 - Ordenação de listas, do Curso de Java parte 6: Conhecendo o java.util, porém o comando foreach apresenta os seguintes erros e não compila:
Exception in thread "main" java.lang.Error: Unresolved compilation problems: Syntax error on token "Conta", ? expected after this token Conta cannot be resolved to a variable conta cannot be resolved to a variable Syntax error, insert ";" to complete Statement conta cannot be resolved to a variable
at br.com.byteBank.banco.teste.util.Teste.main(Teste.java:36)
Já comparei meu código (abaixo) com o do professor e não encontrei a diferença.
Poderiam por gentileza me ajudar?
Obrigada.
package br.com.byteBank.banco.teste.util;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import br.com.byteBank.banco.modelo.Conta;
import br.com.byteBank.banco.modelo.ContaCorrente;
import br.com.byteBank.banco.modelo.ContaPoupanca;
public class Teste {
public Teste() {
}
public static void main(String[] args) {
Conta cc1 = new ContaCorrente(22, 33);
cc1.deposita(333.0);
Conta cc2 = new ContaPoupanca(22, 44);
cc2.deposita(444.0);
Conta cc3 = new ContaCorrente(22, 11);
cc3.deposita(111.0);
Conta cc4 = new ContaPoupanca(22, 22);
cc4.deposita(222.0);
List<Conta> lista = new ArrayList<>();
lista.add(cc1);
lista.add(cc2);
lista.add(cc3);
lista.add(cc4);
foreach (Conta conta : lista) {
System.out.println(conta);
}
NumeroDaContaComparator comparator = new NumeroDaContaComparator();
System.out.println("---------");
lista.sort(comparator);
for (Conta conta : lista) {
System.out.println(conta);
}
}
class NumeroDaContaComparator implements Comparator<Conta> {
@Override
public int compare(Conta c1, Conta c2) {
if(c1.getNumero() < c2.getNumero()) {
return -1;
}
if(c1.getNumero() > c2.getNumero()) {
return 1;
}
return 0;
}
}
}