1 - Escreva um método genérico que conte o número de elementos distintos em uma
coleção. Veja abaixo um exemplo de programa principal para testar o método genérico
a ser criado.
public class Test {
public static void main(String[] args) {
Collection<Integer> coli = Arrays.asList(1, 1, 2, 2, 2);
Collection<Double> cold = Arrays.asList(1.1, 1.2, 1.2, 1.4);
Collection<Character> colc = Arrays.asList(‘1’, ‘2’, ‘3’, ‘4’);
int counti = TrabalhoPOO1.MeuMetodoGenerico(coli);
int countd = TrabalhoPOO1.MeuMetodoGenerico(cold);
int countc = TrabalhoPOO1.MeuMetodoGenerico(colc);
System.out.println("Qtd de numeros inteiros distintos = " + counti);
System.out.println("Qtd de numeros double distintos = " + countd);
System.out.println("Qtd de caracteres distintos = " + countc);
}
}
Resposta esperada após execução:
Qtd de numeros inteiros distintos = 2
Qtd de numeros double distintos = 3
Qtd de caracteres distintos = 4
3. Escreva um método genérico que troque as posições de dois elementos diferentes em
um vetor. O método deverá ter três parâmetros: o vetor de um tipo genérico e dois
inteiros representando as posições a serem trocadas.
4. Escreva um programa Java que crie um novo array list, adicione quatro cores no
formato string (Ex: “azul”, “preto”, “verde” e “branco”), e imprima a coleção.
5. Altere o código do exercício anterior para acrescentar uma cor no início e outra no final
da coleção.
Obs: Eu fiz a questão 4 e 5
import java.util.Arrays;
import java.util.LinkedList;
public class MethodColor {
public static void main(String[] args) throws Exception {
// Adicionando na Lista Azul, Preto, Verde, Branco.
String[] colors = { "Blue", "Black", "Green", "White" };
LinkedList<String> links = new LinkedList<String>(Arrays.asList(colors));
links.addFirst("Purple"); // Adicionando a cor "Roxa" primeiro.
links.addLast("Grey"); // Adicionando a cor "Cinza" por último.
// Obtendo elementos na LinkedList.
colors = links.toArray(new String[links.size()]);
System.out.println("\nColor\n");
for (String color : colors) {
System.out.println(color);
}
}
}