Simplesmente porque você está em um foreach dentro do Map e tentando remover um objeto desse próprio Map.
Use o iterator se queres fazer isso. E outra, para que criar um método para limpar todo o conteúdo do Map?
Simplesmente porque você está em um foreach dentro do Map e tentando remover um objeto desse próprio Map.
Use o iterator se queres fazer isso. E outra, para que criar um método para limpar todo o conteúdo do Map?
Se quiser limpar apenas alguns elementos (digamos que sejam os elementos cuja chave é divisível por 3), você precisa usar um Iterator mesmo. Por exemplo:
Simplesmente porque você está em um foreach dentro do Map e tentando remover um objeto desse próprio Map.
Use o iterator se queres fazer isso. E outra, para que criar um método para limpar todo o conteúdo do Map?
Eu não entendi o problema direito…tem como explicar de novo?
O entanglement demonstrou o que eu havia lhe dito, é só ler com calma
E o que eu quis dizer é que o seu método remove, dá a entender, que desejas simplesmente remover todos os itens do seu Map e a interface Map já dispõe de um método que faz isso, entende?
Se quiser limpar apenas alguns elementos (digamos que sejam os elementos cuja chave é divisível por 3), você precisa usar um Iterator mesmo. Por exemplo:
Legal, mas eu não entendi o lançamento da exceção!
ECO2004
nel:
ECO2004:
nel:
Oi!
Simplesmente porque você está em um foreach dentro do Map e tentando remover um objeto desse próprio Map.
Use o iterator se queres fazer isso. E outra, para que criar um método para limpar todo o conteúdo do Map?
Eu não entendi o problema direito…tem como explicar de novo?
O entanglement demonstrou o que eu havia lhe dito, é só ler com calma
E o que eu quis dizer é que o seu método remove, dá a entender, que desejas simplesmente remover todos os itens do seu Map e a interface Map já dispõe de um método que faz isso, entende? :)
Mas qual o problema em eu querer retirar todos os itens do Map manualmente?
Não entendi o lançamento da exceção…
E
entanglement
É claro que você pode tirar os elementos do Map, mas você tem de usar o “remove” do Iterator, não o “remove” do Map, se estiver “andando” sobre ele. Como você estava “andando” sobre o Map (com o “for”), então ocorreu o ConcurrentModificationException.
ECO2004
entanglement:
É claro que você pode tirar os elementos do Map, mas você tem de usar o “remove” do Iterator, não o “remove” do Map, se estiver “andando” sobre ele. Como você estava “andando” sobre o Map (com o “for”), então ocorreu o ConcurrentModificationException.
Quando usar então o remove do Map, se dentro dele tenho que usar o iterator?
E
entanglement
Use quando não estiver “andando” sobre ele. Por exemplo, digamos que o Map contenha o par 10 -> “José”.
Então:
Map<Integer,String>m=...;m.remove(10);
ECO2004
entanglement:
Use quando não estiver “andando” sobre ele. Por exemplo, digamos que o Map contenha o par 10 -> “José”.
Se quiser limpar apenas alguns elementos (digamos que sejam os elementos cuja chave é divisível por 3), você precisa usar um Iterator mesmo. Por exemplo: