1
resposta

Ordenando com Comparable

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

class Livro implements Comparable<Livro> {
    private String titulo;
    private String autor;

    public Livro(String titulo, String autor) {
        this.titulo = titulo;
        this.autor = autor;
    }

    public String getTitulo() {
        return titulo;
    }

    public String getAutor() {
        return autor;
    }

    @Override
    public int compareTo(Livro outroLivro) {
        return this.titulo.compareTo(outroLivro.getTitulo());
    }

    @Override
    public String toString() {
        return "Livro{" +
               "titulo='" + titulo + '\'' +
               ", autor='" + autor + '\'' +
               '}';
    }
}

public class TesteOrdenacaoLivros {
    public static void main(String[] args) {
        List<Livro> livros = new ArrayList<>();
        livros.add(new Livro("O Senhor dos Anéis", "J.R.R. Tolkien"));
        livros.add(new Livro("1984", "George Orwell"));
        livros.add(new Livro("A Revolução dos Bichos", "George Orwell"));
        livros.add(new Livro("O Pequeno Príncipe", "Antoine de Saint-Exupéry"));


        System.out.println("Antes da ordenação:");
        for (Livro livro : livros) {
            System.out.println(livro);
        }

        Collections.sort(livros);

        System.out.println("\nDepois da ordenação:");
        for (Livro livro : livros) {
            System.out.println(livro);
        }
    }
}
1 resposta

Olá, Benjamin! Como vai?

Muito bem! Continue resolvendo os desafios e compartilhando com a comunidade Alura.

Observei que você explorou o uso de interfaces para ordenar objetos em Java, utilizou muito bem o Comparable para definir a ordenação natural e ainda compreendeu a importância do método compareTo para customizar a lógica de comparação.

Permaneça postando as suas soluções, com certeza isso ajudará outros estudantes e tem grande relevância para o fórum.

Ícone de sugestão Para saber mais:

Sugestão de conteúdo para você mergulhar ainda mais sobre o tema:

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!