1
resposta

Desafio

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.

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

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

        Pessoa pessoa1 = new Pessoa("Bárbara", 23);
        Pessoa pessoa2 = new Pessoa("Mikael", 26);
        Pessoa pessoa3 = new Pessoa("Tayná", 16);

        List<Pessoa> listaDasPessoas = new ArrayList<Pessoa>();

        listaDasPessoas.add(pessoa1);
        listaDasPessoas.add(pessoa2);
        listaDasPessoas.add(pessoa3);

        Collections.sort(listaDasPessoas);
        System.out.println(listaDasPessoas);


    }
}


public class Pessoa implements Comparable<Pessoa>{
    private String nome;
    private int idade;

    public int getIdade() {
        return idade;
    }

    public void setIdade(int idade) {
        this.idade = idade;
    }

    public Pessoa(String nome, int idade){
        this.nome = nome;
        this.idade = idade;
    }

    @Override

    public String toString(){
        return "Nome: " + nome + "|" + "Idade: " + idade;
    }

    @Override
    public int compareTo(Pessoa outra){
        return Integer.compare(this.idade,outra.idade);
    }
}

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.

public class Titulo implements Comparable<Titulo> {
    private String nome;

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

    @Override
    public String toString(){
        return "Nome :" + nome;
    }

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


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

public class Principal {
    public static void main(String[] args){
        Titulo nome = new Titulo("Coraline");
        Titulo nome1 = new Titulo("Ana");
        Titulo nome2 = new Titulo("Wesley");

        List<Titulo> listaNomes = new ArrayList<Titulo>();

        listaNomes.add(nome);
        listaNomes.add(nome1);
        listaNomes.add(nome2);

        Collections.sort(listaNomes);
        System.out.println(listaNomes);
    }
}

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.

FEITO

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.

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){
        Titulo nome = new Titulo("Coraline");
        Titulo nome1 = new Titulo("Ana");
        Titulo nome2 = new Titulo("Wesley");

        List<Titulo> listaNomes = new ArrayList<Titulo>();
        List<Titulo> listaDoNomes = new LinkedList<>();

        listaNomes.add(nome);
        listaNomes.add(nome1);
        listaNomes.add(nome2);

        listaDoNomes.add(nome);
        listaDoNomes.add(nome1);
        listaDoNomes.add(nome2);
        
        //Com ArrayList
        Collections.sort(listaNomes);
        System.out.println(listaNomes);
        // Com LinkedList
        Collections.sort(listaDoNomes);
        System.out.println("COM LINKEDLIST: " + listaDoNomes);


    }
}

Matricule-se agora e aproveite até 50% OFF

O maior desconto do ano para você evoluir com a maior escola de tecnologia

QUERO APROVEITAR
1 resposta

Olá, Bárbara! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso da interface Comparable para ordenar objetos personalizados, utilizou muito bem o Collections.sort para organizar listas de forma eficiente e ainda compreendeu a importância da flexibilidade da interface List ao alternar entre ArrayList e LinkedList.

Uma dica interessante para o futuro é postar cada solução em um tópico separado, isso nos ajuda a apontar sugestões individualmente para as suas atividades!

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!