Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Projeto] Sobrescrevendo toString e Ordenando a lista

Sobrescrita do toString

public class Aula {

    private String title;
    private int timeInMinutes;

    public Aula(String title, int timeInMinutes) {
        this.title = title;
        this.timeInMinutes = timeInMinutes;
    }

    public String getTitle() {
        return this.title;
    }

    public int getTimeInMinutes() {
        return timeInMinutes;
    }

    @Override
    public String toString() {
        return "Aula: " + this.title + ", " + this.timeInMinutes + " minutes";
    }
}

TesteDaListaDeAula

import java.util.ArrayList;
import java.util.Comparator;

import static java.util.Comparator.comparingInt;

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

        Aula aula1 = new Aula("Revistando as ArrayLists", 21);
        Aula aula2 = new Aula("Listas de objetos", 20);
        Aula aula3 = new Aula("Relacionamento de listas e objetos", 15);

        //Criando uma lista de objetos:
        ArrayList<Aula> listaDeAulas = new ArrayList<>();
        listaDeAulas.add(aula1);
        listaDeAulas.add(aula2);
        listaDeAulas.add(aula3);

        //toString sobrescrito:
        System.out.println(listaDeAulas + "\n");

        //ordenando com method reference (title)
        listaDeAulas.sort(Comparator.comparing(Aula::getTitle));
        System.out.println(listaDeAulas + "\n");

        //ordenando com method reference (timeInMinutes)
        //utilizando método estático:
        listaDeAulas.sort(comparingInt(Aula::getTimeInMinutes));
        listaDeAulas.forEach(System.out::println); //imprimindo utilizando method reference e forEach


    }
}
1 resposta
solução!

Olá Kevin!

Pelo código que você postou, entendi que você está sobrescrevendo o método toString() da classe Aula para imprimir as informações de cada objeto de forma personalizada. Isso é muito útil para facilitar a visualização dos dados.

Além disso, você está ordenando a lista de aulas utilizando o método sort() da classe ArrayList, que recebe como parâmetro um Comparator para definir a forma de ordenação. No seu caso, você está utilizando method references para comparar os títulos e os tempos das aulas.

Parabéns pelo código! Continue praticando e aprimorando seus conhecimentos em Java Collections.

Espero ter ajudado e bons estudos!