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!
Se sim, eu recomendo vc ordenar diretamente do banco utilizando o ORDER BY.
T
TricolorPJ
Se você está buscando esses dados num banco, vc pode ordenar através SQL (order by).
M
mdtorbisPJ
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
AdornesPJ
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
mdtorbisPJ
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!
Fiz o código aqui na correria. Se der problema me da um toque =)
A
AdornesPJ
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
mdtorbisPJ
“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!