No trecho do código"//Apresentação dos nomes na matriz RELACAO1, após a
//entrada dos dados na coleção LISTA.
String[] RELACAO1 = (String[]) LISTA.toArray(new String[0]);
System.out.println();
System.out.printf(“Total de %1d elementos.\n\n”,T);
for( I = 0; I < T; I++) {
System.out.printf("%dº nome = %s\n", I+1, RELACAO1[I]);
}", a presentação dos resultados estão saindo ordenados. Alguém pode explicar? A seguir, o programa completo para ser testado.
import java.util.*;
public class C08EX15 {
public static void main(String[] args) {
Set LISTA = new HashSet<>();
Scanner sc1 = new Scanner(System.in);
Scanner sc2 = new Scanner(System.in);
long T;
int I;
String N;
//Entrada de nomes na coleção LISTA
System.out.println();
System.out.print("Quantos nomes a entrar? ");
T = sc1.nextInt();
System.out.println();
for( I = 0; I < T; I++) {
System.out.printf("Entre com %dº nome: ", I+1);
N = sc2.nextLine();
LISTA.add(N);
}
T = LISTA.size();
**//Apresentação dos nomes na matriz RELACAO1, após a**
** //entrada dos dados na coleção LISTA.**
** String[] RELACAO1 = (String[]) LISTA.toArray(new String[0]); **
** System.out.println();**
** System.out.printf(“Total de %1d elementos.\n\n”,T);**
** for( I = 0; I < T; I++) {**
** System.out.printf("%dº nome = %s\n", I+1, RELACAO1[I]);**
** }**
//Remoção de um nome da lista
System.out.println();
System.out.print("Qual nome será removido.......: ");
N = sc2.nextLine();
LISTA.remove(N);
T = LISTA.size();
//Apresentação dos nomes na matriz RELACAO2, após a
//entrada dosdados na coleção LISTA.
String[] RELACAO2 = (String[]) LISTA.toArray(new String[0]);
System.out.println();
for( I = 0; I < T; I++) {
System.out.printf("%dº nome = %s\n", I+1, RELACAO2[I]);
}
System.out.printf("Total de %1d elementos.\n\n",T);
System.out.println();
//Remoção de todos os itens da lista.
System.out.println("Remoção de todos os itens da lista.");
LISTA.clear();
T = LISTA.size();
System.out.println("T = "+ T);
/*Apresentação dos nomes após a remoção de todos os itens,
*o conteúdo de RELACAO2 não será apresentado, pois está vazia,
*o laço for não é executado. */
String RELACAO3[] = (String[]) LISTA.toArray(new String[0]);
System.out.printf("Total de %1d elementos.\n\n",T);
//System.out.println();
for(I = 0; I < RELACAO3.length; I++)
System.out.printf("%dº nome = %s\n", I+1, RELACAO3[I]);
System.out.print("\tFim.");
sc1.close();
sc2.close();
}
}