Como não inserir valores repetidos na jtable[resolvido]
4 respostas
P
paty_trind
ola,
gostaria de saber se há uma maneira de não inserir valores repetidos em uma jtable.Meu amigo me ensinou a controlar isso com um if e um for mas o problema é que funciona so para a 1 linha as outras se repetem varias vezes na jtable :/
o código do if é o seguinte:
Dentro do seu model vc tem uma lista de alunos, certo? Basta testar se o aluno já está lá com o método contains.
Se o seu model fornecer dados ordenados fica ainda mais fácil, basta usar dentro do model um TreeSet ao invés de um ArrayList.
Se você está usando o DefaultTableModel, prepara-se para ter bem mais trabalho e fazer um código muitíssimo mais ineficiente. Busque todos os ids, até encontrar um que seja igual ao do aluno sendo cadastrado. Quando for, vc sabe que o cara já está lá.
P
paty_trind
ola, Luciano_Lopes
como ficaria este while?
ViniGodoy
não sei o que é TreeSet.Poderia explicar?
Estou usando meu proprio modelo de tabela.
Ah como posso dizer na minha tabela tipo aparece varias vezes as mesmas linhas
exemplo
rc disciplina modulo atividade atividade atividade
5 biologia 1 T
5 biologia 1 PcP
5 biologia 1 F
dai daquela forma que meu amigo me ensinou fica
disciplina modulo atividade atividade atividade
biologia 1 T PcP F
só o problema é que com as outras disciplinas não tah dando muito certoo
acontece que cada disciplina antes de ser inserida na tabela esta sendo comparada com as disciplinas que ja estao adicionadas na table daqui quando chega a vez do ultimo elemento ser inserido ele compara com todos os itens ja adicionados e insere tipo dai se tem portugues e matematica e eu vou inserir por ultimo ciencias ciencias aparece 2 vezes na tabela,tipo ve se é igual a port. não é insere,depois ve se é igual mat. não é insere…
como posso fazer para comparar todos os itens da tabela e depois inserir os elementos?
muito obrigada pela ajuda
P
paty_trind
Meu amigo disse para eu implementar o seguinte no codigo
//antes do for
boolean b=true;
//dai dentro do if
b=false;
//ah e tirar o ! da condição do if
//e por final
if(b)
{
model.addAluno(aluno);
}
e deu certooo agora ta funcionando!!!
obrigada pela ajuda