You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Olá, estou tentando remover elementos utilizando o removeIf, mas a IDE me passa uma exception = UnsupportedOperationException : remove
List numeros = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 5, 4, 3);
numeros.removeIf(n -> n % 2 != 0);
System.out.println(numeros);
Obs: Tentei de diversas maneiras, mesmo colocando como exceção checada e não checada, simplesmente ele não aceita, o que faço?
att Rafael
The text was updated successfully, but these errors were encountered:
Obrigada pela pergunta, bem interessante. Vamos lá: quando você inicia uma List com o Arrays.asList() você cria uma lista que não pode ser modificada. Daí, você esta tentando usar um método que para ele ser executado, por default, ele precisa modificar o objeto.
Iniciei o objeto números com uma lista que pode ser modificada, e deu certo. Sua implementação do método removeIf() está correta!
Aí para utilizar o método removeIf() você poderá fazer da seguinte forma:
List<Integer> numeros = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 5, 4, 3);
/*numeros.removeIf(n -> n % 2 != 0); System.out.println(numeros);*///Fazendo uma cópia da lista que não pode ser modificada:List<Integer> numeros2 = newArrayList<>(numeros);
// Aqui retornará true porque as duas listas contêm os mesmos elementos na mesma ordem.//Porém, elas são objetos distintos em memória.System.out.println(numeros2.equals(numeros));
//Agora sim você consegue remover os elementos:numeros2.removeIf(n -> n % 2 != 0);
System.out.println(numeros2);
}
}
olá, tudo bem Cami....agora eu entendi...muito obrigado...simples e direto....perfeito. No máximo eu estava somente isolando os ímpares dos pares, obrigado!!!!
Olá, estou tentando remover elementos utilizando o removeIf, mas a IDE me passa uma exception = UnsupportedOperationException : remove
List numeros = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 5, 4, 3);
Obs: Tentei de diversas maneiras, mesmo colocando como exceção checada e não checada, simplesmente ele não aceita, o que faço?
att Rafael
The text was updated successfully, but these errors were encountered: