JTable ordenada

7 respostas
A

Olá!

Tenho um sistema que trabalha com várias JTables, e agora que a quantidade de dados armazenados começou a aumentar achei útil (e necessário) organizar essas JTables por ordem alfabética! Mas não consegui descobrir ainda como fazer isso! :roll: Deve ser detalhe!

Alguém sabe? :?:

7 Respostas

R

deixe eu perguntar…

esses dados que preenchem a JTable vem do banco?

Se sim, eu recomendo vc ordenar diretamente do banco utilizando o ORDER BY.

T

Se você está buscando esses dados num banco, vc pode ordenar através SQL (order by).

M

Poisé…ordenar os dados não tem nada a ver com a JTable! Esta forma de ordenação vai mudar de acordo com a Estrutura de Dados que tu estiver utilizando!

A

Bah, esqueci este grande detalhe!!!
Na verdade é assim: tem uma Hashtable principal que é lida no formato de Vetores, através dos quais é feita a JTable.
A questão então é ordenar o vetor? Como?

Abraços

M

Humm…tem diversas maneiras de ordenar vetores HeapSort, BublleSort, ShellSort, Inserção Direta, … e vai …
Bem…eu acredito que a melhor forma para deixar o vetor ordenado é, sempre deixá-lo ordenado hehehe ou seja, quando inserir um valor, já coloca este mesmo valor na ordem certa!

Bem…se tu quer ordenar String’s:

public void bubbleSort(String nomes[], int tam_vetor)
{
 int i, lim, k;
 boolean troca = true;
 String temp;
 k = 0;
 
 lim = tam_vetor - 1;
 while (troca == true)
 {
   troca = false;
   for (i=0; i < lim, i++)
   {
     if (nomes[i].compareTo(nomes[i+1]) > 0)
     {
       temp = nomes[i];
       nomes[i] = nomes[i+1];
       nomes[i+1] = temp;
       troca = true;
       k = i;
     }
   }
   lim = k;
 }
}

Fiz o código aqui na correria. Se der problema me da um toque =)

A

Bom, a JTable que eu quero ordenar recebe seus dados de uma Hashtable que é constituída de uma lista de Vectors! Nesse caso, para usar este algorítmo, imagino que eu teria que ler as chaves da Hashtable como uma lista, e passa a tal lista como parâmetro!
Dei uma procurada na API mas não me achei muito bem!
A classe Hashtable tem um método keys() que retorna uma Enumeration.
Vi também que a classe Collections tem um método sort() que recebe um objeto List como parâmetro! A partir daí eu já não me achei mais, mas acho que é um caminho!

Alguém dá uma luz!? :idea:

M

“Adornes”:
Bah, esqueci este grande detalhe!!!
Na verdade é assim: tem uma Hashtable principal que é lida no formato de Vetores, através dos quais é feita a JTable.
A questão então é ordenar o vetor? Como?

Eu respondi a tua pergunta =P “como ordenar vetores?” hehehe
Vou dar uma pesquisa e ver se encontro esta solução pra ti então cara!

Criado 24 de janeiro de 2005
Ultima resposta 26 de jan. de 2005
Respostas 7
Participantes 4