Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Haga lo que hicimos en aula: declarando constructores

Adjunto mi versión de solución usando streams.

package org.example;

import Models.Episodio;
import Models.Pelicula;
import Models.Serie;
import Models.Titulo;
import Services.FiltroRecomendacion;

import java.util.ArrayList;
import java.util.Scanner;

public class Main {

    private static ArrayList<Titulo> titulos = new ArrayList<>();

//    private static final Scanner entry = new Scanner(System.in).useDelimiter("\n");
    public static void main(String[] args) {
        //Instanciación películas y series
        Pelicula pelicula = new Pelicula();
        Serie serie = new Serie();
        Pelicula peliculaNueva = new Pelicula("matrix", 1999);
        Pelicula favorita = new Pelicula("El señor de los anillos", 2001);
        favorita.evalua(10);
        Pelicula otra = new Pelicula("John Wick", 2014);
        otra.evalua(9);
        Serie serieNueva = new Serie("La Casa de Papel", 2017);

        //seteo de parámetros objeto pelicula
        pelicula.setNombre("Encanto");
        pelicula.setFechaLanzamiento(2021);
        pelicula.setDuracionMinutos(120);
        pelicula.setDirector("Alfredo");

        //Evaluación película encanto
        pelicula.evalua(4.6);
        pelicula.evalua(4.9);
        pelicula.evalua(4.4);

        //Seteo parametros serie
        serie.setNombre("lucifer");
        serie.setFechaLanzamiento(2013);
        serie.setTemporada(6);
        serie.setMinutosPorEpisodio(50);
        serie.setEpisodiosPorTemporada(13);
        serie.setDuracionMinutos(serie.getDuracionMinutos());

        //Evaluación serie lucifer
        serie.evalua(5.6);
        serie.evalua(4.9);
        serie.evalua(9.8);

        FiltroRecomendacion filtroRecomendacion = new FiltroRecomendacion(pelicula);
        filtroRecomendacion.filtrar();

        Episodio episodio = new Episodio();
        episodio.setNombre("A devil of my word");
        episodio.setNumero(3);
        episodio.setSerie(serie);
        episodio.setTotalVisualizaciones(1450);
        FiltroRecomendacion filtroSerie = new FiltroRecomendacion(episodio);
        filtroSerie.filtrar();

        //Agregar lista
        titulos.add(pelicula); titulos.add(serie); titulos.add(peliculaNueva);
        titulos.add(favorita); titulos.add(otra); titulos.add(serieNueva);

        //Impresiones por pantalla de los objetos
        System.out.println("Detalles película: \n" + pelicula.toString());
        System.out.println("Detalles serie: \n" + serie.toString());
        titulos.stream().forEach(titulo -> {
            if(titulo instanceof Pelicula movie && movie.getClasificacion() > 2){
                System.out.println(movie.getClasificacion());
            }
        });
    }
}
1 respuesta

Hola Alejandro, espero que estés bien

Considero su código muy bueno, en este momento no veo puntos de mejora. ¡Continúa con sus estudios y éxito en su carrera!

Gracias por compartir tu ejercício práctico con nosotros! Tu contribución es fundamental para el crecimiento de nuestra comunidad en Alura. Sigue comprometido y no dudes en regresar al foro en caso que tengas alguna duda o dificultad.

¡Abrazos y buenos estudios!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios!