Java uso do toArray em interface Set, ordenando resultados

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();
}

}