1
resposta

[Concluído] Utilizando foreach e instanceof

Classe Principal Com Listas:

package br.com.alura.screenmatch.principal;

import br.com.alura.screenmatch.modelos.Filme;
import br.com.alura.screenmatch.modelos.Serie;
import br.com.alura.screenmatch.modelos.Titulo;

import java.util.ArrayList;

public class PrincipalComListas {
    public static void main(String[] args) {
        Filme meuFilme = new Filme("O poderoso chefão", 1970);
        meuFilme.avalia(9);
        Filme outroFilme = new Filme("Avatar", 2023);
        outroFilme.avalia(6);
        var filmeDoPaulo = new Filme("Dogville", 2003);
        filmeDoPaulo.avalia(10);
        Serie lost = new Serie("Lost", 2000);

        Filme f1 = filmeDoPaulo;

        ArrayList<Titulo> lista = new ArrayList<>();
        lista.add(filmeDoPaulo);
        lista.add(meuFilme);
        lista.add(outroFilme);
        lista.add(lost);

        for (Titulo item : lista) {
            System.out.println(item.getNome());
            if (item instanceof Filme filme && filme.getClassificacao() > 3) {
                System.out.println("Classificação " + ((Filme) item).getClassificacao());
            }

        }
    }
}
1 resposta

Boa Tarde, Rodrigo! Tudo bem?

Você fez um excelente trabalho na implementação do uso de listas e no emprego do foreach e instanceof. Testei o seu código e ele executou como esperado:

Imagem contendo a execução do código do aluno

Conte com o apoio do Fórum na sua jornada. Abraços e bons estudos!