Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
1
respuesta

Haga lo que hicimos en aula: ArrayList y toString

1---En Pelicula.java sobreescribimos toString() para que imprima nombre y año.

2---En Principal.java usamos ArrayList:

....Añadimos las instancias.

......size() muestra cuántos elementos tiene la lista.

......get(0) devuelve el primer objeto, y al imprimirlo invoca su toString().

....System.out.println(listaDePeliculas) imprime la lista completa, llamando a toString() de cada elemento.

// Pelicula.java
public class Pelicula {
    private String nombre;
    private int fechaDeLanzamiento;

    public Pelicula(String nombre, int fechaDeLanzamiento) {
        this.nombre = nombre;
        this.fechaDeLanzamiento = fechaDeLanzamiento;
    }

    public String getNombre() {
        return nombre;
    }

    public int getFechaDeLanzamiento() {
        return fechaDeLanzamiento;
    }

    @Override
    public String toString() {
        return "Pelicula: " + this.getNombre() + " (" + this.getFechaDeLanzamiento() + ")";
    }
}
// Principal.java
import java.util.ArrayList;

public class Principal {
    public static void main(String[] args) {
        // Creamos un par de objetos Pelicula
        Pelicula favorito = new Pelicula("Inception", 2010);
        Pelicula otro     = new Pelicula("The Matrix", 1999);

        // Lista de películas usando ArrayList con genéricos
        ArrayList<Pelicula> listaDePeliculas = new ArrayList<>();
        listaDePeliculas.add(favorito);
        listaDePeliculas.add(otro);

        // Imprimimos información
        System.out.println("Tamaño de la lista: " + listaDePeliculas.size());
        System.out.println("Primera película: " + listaDePeliculas.get(0));
        System.out.println(listaDePeliculas);
    }
}
1 respuesta
solución!

Hola Cristian, espero que estés bien

¡Qué bueno que estás trabajando con listas y colecciones en Java! Parece que has seguido correctamente los pasos para implementar la clase Pelicula con el método toString() sobreescrito y para crear y manipular una lista de películas en la clase Principal.

En tu código, ya has implementado el método toString() en la clase Pelicula, lo que permitirá que al imprimir un objeto de tipo Pelicula, se muestre el nombre y el año de lanzamiento de la película. Además, has creado un ArrayList en la clase Principal y has añadido dos instancias de Pelicula a la lista.

Tu implementación en Principal.java también parece correcta:

  1. Creas instancias de Pelicula y las añades a listaDePeliculas.
  2. Utilizas size() para mostrar el tamaño de la lista.
  3. Usas get(0) para obtener e imprimir la primera película, lo que invoca toString().
  4. Imprimes la lista completa, lo que llama automáticamente a toString() para cada elemento de la lista.

Todo parece estar en orden. Si estás buscando replicar lo que se hizo en clase, parece que lo has logrado. Si tienes alguna duda específica sobre algún paso o parte del código, no dudes en mencionarlo.

Espero haber ayudado y buenos estudios!