- Ordenação de Números Inteiros (Exercício 1)
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class OrdenacaoNumeros {
public static void main(String[] args) {
// Criando e populando a lista
List<Integer> numeros = new ArrayList<>();
numeros.add(5);
numeros.add(2);
numeros.add(8);
numeros.add(1);
numeros.add(3);
// Ordenando a lista
Collections.sort(numeros);
// Imprimindo o resultado
System.out.println("Lista ordenada: " + numeros);
}
}
- Classe Titulo com Comparable (Exercício 2)
public class Titulo implements Comparable<Titulo> {
private final String nome;
public Titulo(String nome) {
this.nome = nome;
}
public String getNome() {
return nome;
}
@Override
public int compareTo(Titulo outroTitulo) {
if (outroTitulo == null) {
return 1;
}
return this.nome.compareToIgnoreCase(outroTitulo.nome);
}
@Override
public String toString() {
return nome;
}
}
3) Ordenação de Objetos Titulo (Exercício 3)
```import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class OrdenacaoTitulos {
public static void main(String[] args) {
// Criando lista de títulos
List<Titulo> titulos = new ArrayList<>();
titulos.add(new Titulo("O Senhor dos Anéis"));
titulos.add(new Titulo("Harry Potter"));
titulos.add(new Titulo("As Crônicas de Nárnia"));
titulos.add(new Titulo("Percy Jackson"));
// Ordenando os títulos
Collections.sort(titulos);
// Imprimindo resultado
System.out.println("Títulos ordenados alfabeticamente:");
for (Titulo titulo : titulos) {
System.out.println(titulo);
}
}
}
``
4. Implementações de List (Exercício 4)
```import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
public class TesteListas {
public static void main(String[] args) {
// Testando ArrayList
System.out.println("=== ArrayList ===");
List<String> arrayList = new ArrayList<>();
arrayList.add("Java");
arrayList.add("Python");
arrayList.add("C#");
imprimirLista(arrayList);
// Testando LinkedList
System.out.println("\n=== LinkedList ===");
List<String> linkedList = new LinkedList<>();
linkedList.add("Ruby");
linkedList.add("JavaScript");
linkedList.add("Go");
imprimirLista(linkedList);
}
private static void imprimirLista(List<String> lista) {
System.out.println("Conteúdo da lista:");
for (String item : lista) {
System.out.println("- " + item);
}
System.out.println("Tamanho da lista: " + lista.size());
}
}
``
5. Polimorfismo com List (Exercício 5)
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
public class PolimorfismoLista {
public static void main(String[] args) {
// Declarando como interface List
List<String> lista;
// Usando como ArrayList
System.out.println("Usando como ArrayList:");
lista = new ArrayList<>();
popularEImprimir(lista);
// Usando como LinkedList
System.out.println("\nUsando como LinkedList:");
lista = new LinkedList<>();
popularEImprimir(lista);
}
private static void popularEImprimir(List<String> lista) {
// Adicionando elementos
lista.add("Elemento 1");
lista.add("Elemento 2");
lista.add("Elemento 3");
// Imprimindo
System.out.println("Tipo da lista: " + lista.getClass().getSimpleName());
System.out.println("Conteúdo: " + lista);
System.out.println("Tamanho: " + lista.size());
}
}