Galera, estou fazendo um trabalho da faculdade em que eu tenho que ordenar um vetor inserido pelo usuário. Essa parte já funciona belezinha, o que eu estou com dificuldade é que quando clicar no botão de ordenar, ele dê uma espécie de passo a passo dentro de um jtextarea, com um tempinho de diferença entre cada linha.
Aí que está meu problema, estou tentando colocar um Thread.sleep dentro do meu for, para que ele imprima uma linha e dê uma pequena pausa, mas ele não está pausando no momento certo e sim antes de iniciar a ordenação e já imprime tudo de uma vez.
Alguém poderia me dar uma luz de como eu poderia estar fazendo essa pausa de maneira correta?
Esse seria o código que estou trabalhando:
public void bubbleSort(int[] vetor){
int[] vetor_a_ordenar=vetor;
int[] vetor_inicial=vetor;
int cont=1;
String resultado = "";
String resultado2 = "";
for(int l=0;l<vetor_inicial.length;l++){
resultado2+=vetor[l]+" ";
}
for (int i = vetor_a_ordenar.length; i >= 1; i--) {
for (int j = 1; j < i; j++) {
if (vetor_a_ordenar[j - 1] > vetor_a_ordenar[j]) {
int aux = vetor_a_ordenar[j];
vetor_a_ordenar[j] = vetor_a_ordenar[j - 1];
vetor_a_ordenar[j - 1] = aux;
for(int l=0;l<vetor_a_ordenar.length;l++){
resultado+=vetor_a_ordenar[l]+" ";
}
Interface.jTextArea1.append(resultado+"\n"); // Gostaria de dar um pause após imprimir essa linha
resultado="";
cont++;
}
}
}
}