Comparar dados em ArrayList

2 respostas
C
Fiz uma biblioteca onde insere o Nome e cód do livro em uma ArrayList em telas JFrame

ta funfando de boa

mas aí não pode inserir um livro com o mesmo cód de outro livro já inserido/existente

entao eu criei um arraylist onde guarda somente o cód do livro (na tela inserir)

e eu tentei todos os tipos de for e while(for-each, Iterator, size())

e na hora em que o algoritmo ache um valor igual exiba cod ja existente e de um return pra ler a jTextField denovo (sim, eu já converti String pra int)

até aparece a mensagem e tal mas mesmo que eu coloque um valor q nao tem na arraylist aparece a mensagem e retorna do mesmo jeito

2 Respostas

Rodrigo_Vieira_Pinto

Se for para armazenar elementos que não podem se repetir, não use implementações de List, mas implementações de Set:

http://docs.oracle.com/javase/6/docs/api/java/util/Set.html

Dá uma olhada na java collections framework e na suas classes. Tem muita classe interessante lá :wink:

A

O arrayList permite duplicações , o Set não permite (apesar de ter que sobrescrever os métodos equals e hashcode) . Outra possibilidade são os Maps que não permitem chaves duplicadas.

Criado 12 de novembro de 2012
Ultima resposta 12 de nov. de 2012
Respostas 2
Participantes 3