0
respostas

Resolução

Compartilhando meu código. O exercício 4 e 5 eu tive que dar uma olhada no código do professor porque eu não tinha entendido direito o que era para fazer, mas gostei do resultado.

package desafios.desafio04;

public class Titulo implements Comparable<Titulo> {

    private String nome;

    public Titulo(String nome) {
        this.nome = nome;
    }

    @Override
    public String toString() {
        return nome;
    }

    @Override
    public int compareTo(Titulo outroTitulo) {
        return nome.compareTo(outroTitulo.nome);
    }

}

/**
 * 1. Crie uma lista de números inteiros e utilize o método Collections.sort para ordená-la em ordem crescente.
 *    Em seguida, imprima a lista ordenada.
 * 2. Crie uma classe Titulo com um atributo nome do tipo String. Implemente a interface Comparable na classe
 *    para que seja possível ordenar uma lista de objetos Titulo.
 * 3. No Exercício 2, crie alguns objetos da classe Titulo e adicione-os a uma lista. Utilize o
 *    método Collections.sort para ordenar a lista e, em seguida, imprima os títulos ordenados.
 * 4. Crie uma lista utilizando a interface List e instancie-a tanto como ArrayList quanto como LinkedList.
 *    Adicione elementos e imprima a lista, mostrando que é possível trocar facilmente a implementação.
 * 5. Modifique o Exercício 4 para declarar a variável de lista como a interface List, demonstrando
 *    o uso de polimorfismo.
 */

package desafios.desafio04;

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

public class Principal {
    public static void main(String[] args) {
        ArrayList<Integer> numerosInteiros = new ArrayList<>();
        numerosInteiros.add(37);
        numerosInteiros.add(28);
        numerosInteiros.add(12);
        numerosInteiros.add(41);
        numerosInteiros.add(3);
        numerosInteiros.add(82);
        numerosInteiros.add(45);

        System.out.println("Lista de números inteiros = " + numerosInteiros);
        Collections.sort(numerosInteiros);
        System.out.println("Lista de números inteiros em ordem crescente = " + numerosInteiros);

        Titulo titulo1 = new Titulo("The Matrix");
        Titulo titulo2 = new Titulo("O Cavaleiro das Trevas");
        Titulo titulo3 = new Titulo("Mad Max");
        Titulo titulo4 = new Titulo("De Volta para o Futuro");
        Titulo titulo5 = new Titulo("Corra");

        ArrayList<Titulo> titulos = new ArrayList<>();
        titulos.add(titulo1);
        titulos.add(titulo2);
        titulos.add(titulo3);
        titulos.add(titulo4);
        titulos.add(titulo5);

        System.out.println("Lista de Títulos = " + titulos);
        Collections.sort(titulos);
        System.out.println("Lista de Títulos em ordem alfabética = " + titulos);

        List<String> afazeresComArrayList = new ArrayList<>();
        afazeresComArrayList.add("Arrumar a cama");
        afazeresComArrayList.add("Escovar os dentes");
        afazeresComArrayList.add("Tomar café da manhã");
        System.out.println("Lista com Array List = " + afazeresComArrayList);

        List<String> afazeresComLinkedList = new LinkedList<>();
        afazeresComLinkedList.add("Almoço");
        afazeresComLinkedList.add("Trabalhar");
        afazeresComLinkedList.add("Tomar banho");
        System.out.println("Lista com Linked List = " + afazeresComLinkedList);

        List<String> tecnologias;
        tecnologias = new ArrayList<>();
        tecnologias.add("HTML");
        tecnologias.add("CSS");
        tecnologias.add("JavaScript");
        System.out.println("Tecnologias com ArrayList = " + tecnologias);

        tecnologias = new LinkedList<>();
        tecnologias.add("React");
        tecnologias.add("Angular");
        tecnologias.add("PostgreSQL");
        System.out.println("Tecnologias com LinkedList = " + tecnologias);
    }
}

Insira aqui a descrição dessa imagem para ajudar na acessibilidade
O que achou?