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

Agregando toString

import com.aluracursos.screenmatch.calculos.CalculadoraDeTiempo;
import com.aluracursos.screenmatch.calculos.FiltroRecomendacion;
import com.aluracursos.screenmatch.modelos.Episodios;
import com.aluracursos.screenmatch.modelos.Pelicula;
import com.aluracursos.screenmatch.modelos.Serie;

import java.util.ArrayList;

public class Principal {
public static void main(String[] args) {

    Pelicula miPelicula = new Pelicula();

    miPelicula.setNombre("Encanto");
    miPelicula.setFechaLanzamiento(2021);
    miPelicula.setIncluidoEnElPlan(true);
    miPelicula.setDuracion(120);
    miPelicula.evaluar(7.8);
    miPelicula.evaluar(10);
    miPelicula.muestraFichaTecnica();


    Pelicula otraPelicula= new Pelicula();

    otraPelicula.setNombre("Duro de Matar");
    otraPelicula.setFechaLanzamiento(1990);
    otraPelicula.setIncluidoEnElPlan(false);
    otraPelicula.setDuracion(120);
    otraPelicula.evaluar(7.8);
    otraPelicula.evaluar(10);

    otraPelicula.muestraFichaTecnica();

    Serie casaDragon = new Serie();

    casaDragon.setNombre("Casa del Dragon");
    casaDragon.setFechaLanzamiento(2022);
    casaDragon.setTemporadas(1);
    casaDragon.setMinutosPorEpiosodio(50);
    casaDragon.setEpisodiosPorTemporada(10);
    casaDragon.muestraFichaTecnica();

    CalculadoraDeTiempo calculadora = new CalculadoraDeTiempo();
    calculadora.incluye(miPelicula);
    System.out.println("Cuanto tiempo te toma ver los titulos favoritos: "+calculadora.getTiempoTotal()+ " Minutos");

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

    Episodios episodios= new Episodios();
    episodios.setNumero(1);
    episodios.setNombre("la casa Targaryen");
    episodios.setSerie(casaDragon);
    episodios.setTotalVisualizaciones(300);

    filtroRecomendacion.filtrar(episodios);

    Pelicula  peliculaLili = new Pelicula();
    peliculaLili.setNombre("Harry Potter");
    peliculaLili.setDuracion(130);

    ArrayList<Pelicula> listaPelicula= new ArrayList<>();
    listaPelicula.add(miPelicula);
    listaPelicula.add(otraPelicula);
    listaPelicula.add(peliculaLili);

    System.out.println("Tamaño de la lista " +listaPelicula.size());
    System.out.println("La primera Pelicula es: " +listaPelicula.get(0).getNombre());
    System.out.println("Lista de Peliculas: \n" + listaPelicula.toString());







}

}

1 respuesta

Hola Liliana, espero que estés bien

Parece que estás intentando sobrescribir el método toString() en la clase Pelicula para que, al imprimir la lista de películas, se muestre de una manera más clara y legible. Según el contexto que tengo, necesitas modificar tu clase Pelicula para incluir este método sobrescrito.

Aquí tienes un ejemplo de cómo podrías hacerlo:

public class Pelicula {
    private String nombre;
    private int fechaLanzamiento;
    private boolean incluidoEnElPlan;
    private int duracion;
    private double calificacion;

    // Getters y setters omitidos para brevedad

    @Override
    public String toString() {
        return "Pelicula: " + this.getNombre() + " (" + this.getFechaLanzamiento() + ")";
    }
}

Una vez que hayas sobrescrito el método toString(), cuando imprimas la lista de películas, cada objeto Pelicula se representará de acuerdo con el formato que hayas definido en el método toString(). Así que, en tu clase Principal, cuando haces System.out.println(listaPelicula.toString());, debería mostrar la información de cada película en el formato que especificaste.

Espero que esto te ayude a resolver tu duda. ¡Bons estudios!