Sintaxe
arraydeque_object. removerSe ( predicado filter_condition )Onde arraydeque_object representa a coleção ArrayDeque.
Parâmetro
É preciso um predicado que segue a condição.
Observação
Se o predicado for nulo, então um Null Pointer Exception é lançado.
Exemplo 1
Aqui, vamos criar uma coleção ArrayDeque com 5 elementos do tipo String e remover as strings que começam com “V”.
importar java.util.* ;
importar java.util.ArrayDeque ;
público classe Principal
{
público estático vazio a Principal ( Corda [ ] argumentos ) {
// Cria ArrayDeque chamado a_deque_object com tipo String
Dequea_deque_object = novo ArrayDeque ( ) ;
//Inserir 5 strings nele.
a_deque_object. adicionar ( 'Sailaja' ) ;
a_deque_object. adicionar ( 'Farinha' ) ;
a_deque_object. adicionar ( 'Sucesso' ) ;
a_deque_object. adicionar ( 'Vijaia' ) ;
a_deque_object. adicionar ( 'fora' ) ;
Sistema . Fora . imprimir ( 'Dados presentes em a_deque_object: ' + a_deque_object ) ;
//Remove as strings que começam com 'V'.
a_deque_object. removerSe ( filtro -> ( filtro. charAt ( 0 ) == 'DENTRO' ) ) ;
Sistema . Fora . imprimir ( 'Depois de remover os nomes começa com V: ' + a_deque_object ) ;
}
}
Resultado:
Então podemos ver que Vijaya e Vani são as duas strings começando com “V”, então elas são removidas do a_deque_object.
Aqui o predicado usado para filtrar esses dados é – filtro -> (filter.charAt(0) == 'V')
Aqui o filtro se refere à variável.
Explicação
Linha 9,18:
Crie um ArrayDeque chamado a_dequeobject com tipos String e exiba-o
Linha 21,23:
Agora filtre o a_deque_object com o predicado – filtro -> (filter.charAt(0) == 'V')
Exemplo 2
Aqui, vamos criar uma coleção ArrayDeque com 5 elementos do tipo Integer e remover os valores maiores que 200.
importar java.util.* ;importar java.util.ArrayDeque ;
público classe Principal
{
público estático vazio a Principal ( Corda [ ] argumentos ) {
// Cria ArrayDeque chamado a_deque_object com tipo Integer
Dequea_deque_object = novo ArrayDeque ( ) ;
//Inserir 5 inteiros nele.
a_deque_object. adicionar ( 100 ) ;
a_deque_object. adicionar ( 200 ) ;
a_deque_object. adicionar ( 300 ) ;
a_deque_object. adicionar ( 400 ) ;
a_deque_object. adicionar ( 500 ) ;
Sistema . Fora . imprimir ( 'Dados presentes em a_deque_object: ' + a_deque_object ) ;
//Remove os valores maiores que 200
a_deque_object. removerSe ( filtro -> ( filtro > 200 ) ) ;
Sistema . Fora . imprimir ( 'Depois de remover os valores maiores que 200: ' + a_deque_object ) ;
}
}
Resultado:
Então podemos ver que 300.400 e 500 são os três valores que são maiores que 200. Então eles são removidos do a_deque_object.
Aqui o predicado usado para filtrar esses dados é – filtro -> (filtro > 200)
Aqui o filtro se refere à variável.
Explicação
Linha 9,18:
Crie um ArrayDeque chamado a_dequeobject com tipos Integer e exiba-o
Linha 21,22:
Agora filtre o a_deque_object com o predicado – filtro -> (filtro > 200)
Exemplo 3: Demonstrando NullPointerException
Vamos especificar Null como um predicado.
importar java.util.* ;importar java.util.ArrayDeque ;
público classe Principal
{
público estático vazio a Principal ( Corda [ ] argumentos ) {
// Cria ArrayDeque chamado a_deque_object com tipo Integer
Dequea_deque_object = novo ArrayDeque ( ) ;
//Inserir 5 inteiros nele.
a_deque_object. adicionar ( 100 ) ;
a_deque_object. adicionar ( 200 ) ;
a_deque_object. adicionar ( 300 ) ;
a_deque_object. adicionar ( 400 ) ;
a_deque_object. adicionar ( 500 ) ;
Sistema . Fora . imprimir ( 'Dados presentes em a_deque_object: ' + a_deque_object ) ;
a_deque_object. removerSe ( nulo ) ;
}
}
Resultado:
Nós podemos ver isso Null Pointer Exception é levantada.
Conclusão
Vimos como remover os elementos de um objeto de coleção ArrayDeque com um Predicate usando o método removeIf(). Certifique-se de não especificar null, pois isso resulta em um NullPointerException. Discutimos dois exemplos aplicando condições diferentes no predicado e também demonstramos o NullPointerException.