Segue a resolução dos exercícios propostos.
Classe Titulo:
package desafio4;
public class Titulo implements Comparable<Titulo>{
private String nome;
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public Titulo(String nome) {
this.nome = nome;
}
@Override
public int compareTo(Titulo o) {
return this.getNome().compareTo(o.nome);
}
@Override
public String toString() {
return "\nTitulo [" +
"nome: " + nome + "]";
}
}
Classe Main:
package desafio4;
import java.util.ArrayList;
import java.util.Collections;
import java.util.LinkedList;
import java.util.List;
public class Main {
static void main(String[] args) {
System.out.println("\nExercício 1: ");
List inteiros = new ArrayList();
inteiros.add(5);
inteiros.add(4);
inteiros.add(3);
inteiros.add(2);
inteiros.add(1);
System.out.println("Lista antes da ordenação: " + inteiros);
Collections.sort(inteiros);
System.out.println("Lista depois da ordenação: " + inteiros);
System.out.println("\nExercício 2 e 3: ");
Titulo titulo1 = new Titulo("O Homem que desatava mirongas");
Titulo titulo2 = new Titulo("O Homem Nu");
Titulo titulo3 = new Titulo("O Homem de Lata");
ArrayList<Titulo> titulos = new ArrayList<>();
titulos.add(titulo1);
titulos.add(titulo2);
titulos.add(titulo3);
System.out.println("Lista de Títulos antes da ordenação: " + titulos);
Collections.sort(titulos);
System.out.println("Lista de Títulos depois da ordenação: " + titulos);
System.out.println("\nExercício 4 e 5: ");
List<Titulo> arrayListTitulos = new ArrayList();
arrayListTitulos.add(titulo1);
arrayListTitulos.add(titulo2);
arrayListTitulos.add(titulo3);
Collections.sort(arrayListTitulos);
System.out.println("\nTipo de dado da Lista: " + arrayListTitulos.getClass().getName());
System.out.println("Array de Títulos: " + arrayListTitulos);
List<Titulo> linkedListTitulos = new LinkedList();
linkedListTitulos.add(titulo1);
linkedListTitulos.add(titulo2);
linkedListTitulos.add(titulo3);
Collections.sort(linkedListTitulos);
System.out.println("\nTipo de dado da Lista: " + linkedListTitulos.getClass().getName());
System.out.println("LinkedList de Títulos: " + linkedListTitulos);
}
}
Output:
Exercício 1:
Lista antes da ordenação: [5, 4, 3, 2, 1]
Lista depois da ordenação: [1, 2, 3, 4, 5]
Exercício 2 e 3:
Lista de Títulos antes da ordenação: [
Titulo [nome: O Homem que desatava mirongas],
Titulo [nome: O Homem Nu],
Titulo [nome: O Homem de Lata]]
Lista de Títulos depois da ordenação: [
Titulo [nome: O Homem Nu],
Titulo [nome: O Homem de Lata],
Titulo [nome: O Homem que desatava mirongas]]
Exercício 4 e 5:
Tipo de dado da Lista: java.util.ArrayList
Array de Títulos: [
Titulo [nome: O Homem Nu],
Titulo [nome: O Homem de Lata],
Titulo [nome: O Homem que desatava mirongas]]
Tipo de dado da Lista: java.util.LinkedList
LinkedList de Títulos: [
Titulo [nome: O Homem Nu],
Titulo [nome: O Homem de Lata],
Titulo [nome: O Homem que desatava mirongas]]
Process finished with exit code 0