| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 24/09/2007 17:30:55
|
analyser
JavaEvangelist
![[Avatar]](/images/avatar/d5e9d9e23447e1907c70ac5d9b29edcc.jpg)
Membro desde: 26/02/2007 09:31:49
Mensagens: 329
Offline
|
Olá galera estou com um problema, tenho um ArrayList que armazena referências aos objetos de uma classe javabeans, onde tenho um nome cadastrado em cada objeto.
Bem quando faço o laço FORECH e excluo um nome dado como parametro ele remove apenas o primeiro que achar na lista, depois sai do foreach.
Bem, como faço para ele não sair, remover todos os nomes que dei como que é igual ao que passei como parametro??
Abraços
|
Analyser |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 24/09/2007 17:33:22
|
thiago.correa
GUJ Master
![[Avatar]](/images/avatar/c37f9e1283cbd4a6edfd778fc8b1c652.jpg)
Membro desde: 26/03/2006 18:54:30
Mensagens: 1861
Offline
|
Bom, sem o código fica difícil, mas eu diria que você está usando o comando 'break' para sair do laço, se você removê-lo deve sanar o seu problema
|
---
"Se não puder ajudar, atrapalhe, afinal de contas o importante é participar!"
Thiago
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 24/09/2007 17:45:31
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline
|
Provavelmente o seu foreach está lançando uma ConcurrentModificationException.
O fato é que você não pode excluir de uma lista um elemento, enquanto está percorrendo essa mesma lista num for each, ou uma exceção será lançada.
Para contornar esse problema, use um Iterator. Assim, ao invés de:
Faça:
O que acontece é que o for each cria um iterador implicitamente. E quando você chama remove, você está removendo um elemento da lista, sem que o iterador tome conhecimento. Quando o iterador percebe isso (após o primeiro objeto já ter sido removido), ele lança a exceção.
|
@ViniGodoy - Lattes
Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!
Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).
Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/03/2008 16:07:00
|
skrath
Smalltalk
Membro desde: 16/08/2007 23:28:56
Mensagens: 2
Offline
|
Estava com um problema parecido aqui no trabalho.
Sua dica foi muito útil Vinicius.
Obrigado.
|
Fred Neves |
|
|
 |
|
|
|
|