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: ordenando con Comparable

package com.aluracursos.screenmatch.principal;

import com.aluracursos.screenmatch.modelos.Pelicula; import com.aluracursos.screenmatch.modelos.Serie; import com.aluracursos.screenmatch.modelos.Titulo;

import java.util.*;

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

    Pelicula miPelicula = new Pelicula("Mi villano favorito",   2015);
    miPelicula.evalua(9);
    Pelicula otraPelicula = new Pelicula("Animales fantasticos",   2015);
    otraPelicula.evalua(6);
    var peliculaDeBruno = new Pelicula ("El señor de los anillos",   2001);
    peliculaDeBruno.evalua(10);
    Serie leyAudaces = new Serie("La ley de los audaces",  2019);

    ArrayList<Titulo> lista = new ArrayList<>();
    lista.add(miPelicula);
    lista.add(otraPelicula);
    lista.add(peliculaDeBruno);
    lista.add(leyAudaces);

    for (Titulo Item: lista) {
        System.out.println(Item.getNombre());
        if (Item instanceof Pelicula pelicula && pelicula.getClasificacion() > 2){
            System.out.println(pelicula.getClasificacion());
        }

    }

    ArrayList <String> ListaDeArtistas = new ArrayList<>();
    ListaDeArtistas.add("Steve Carell");
    ListaDeArtistas.add("Eddie Redmayne");
    ListaDeArtistas.add("Gabriel Macht");

     Collections.sort(ListaDeArtistas);
     System.out.println("Lista de artistas por orden" + ListaDeArtistas);

     Collections.sort(lista);
     System.out.println("Lista de titulos ordenados" + lista);

     lista.sort(Comparator.comparing(Titulo::getFechaDeLanzamiento));
     System.out.println("Lista ordenada por fecha"+lista);


 }

}

package com.aluracursos.screenmatch.modelos;

import java.awt.*;

public class Serie extends Titulo {

int temporadas;
int episodiosPortemporada;
int minutosPorEpisodio;

public Serie(String nombre, int fechaDeLanzamiento) {
    super(nombre, fechaDeLanzamiento);
}

@Override
public int getDuracionEnMinutos() {
    return temporadas * episodiosPortemporada *minutosPorEpisodio;
}

public int getTemporadas() {
    return temporadas;
}

public void setTemporadas(int temporadas) {
    this.temporadas = temporadas;
}

public int getEpisodiosPortemporada() {
    return episodiosPortemporada;
}

public void setEpisodiosPortemporada(int episodiosPortemporada) {
    this.episodiosPortemporada = episodiosPortemporada;
}

public int getMinutosPorEpisodio() {
    return minutosPorEpisodio;
}

public void setMinutosPorEpisodio(int minutosPorEpisodio) {
    this.minutosPorEpisodio = minutosPorEpisodio;
}

public String toString(){
    return "Serie: " +this.getNombre()+" ("+this.getFechaDeLanzamiento()+")";
}

}

1 respuesta

Hola! ¿Cómo estás?

Gracias por tu aporte en el foro. Su contribución es esencial para el crecimiento de nuestra comunidad en Alura.

Abrazos y buenos estudios!

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