Você está aqui: Java ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como retornar a diferença entre dois arrays usando o método Arrays.stream() do JavaQuantidade de visualizações: 749 vezes |
|
Nesta dica mostrarei como podemos usar as streams do Java para obter e retornar a diferença entre dois vetores de inteiros. Para isso nós usaremos alguns métodos da classe Stream, tais como filter(), collect() e um objeto da classe Set. Veja o código Java completo para o exemplo: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
package estudos;
import java.util.Arrays;
import java.util.Set;
import java.util.stream.Collectors;
public class Estudos{
public static void main(String args[]){
// vamos criar dois vetores de inteiros
int a[] = {1, 2, 3, 4, 5};
int b[] = {2, 3, 7, 8, 9};
// vamos exibir os dois vetores
System.out.println("Primeiro vetor: " + Arrays.toString(a));
System.out.println("Segundo vetor: " + Arrays.toString(b));
// vamos retornar a diferença entre o vetor a e o vetor b
int c[] = diferenca(a, b);
System.out.println("Vetor diferença a e b: " + Arrays.toString(c));
}
// método que recebe dois arrays e retorna a diferença entre o primeiro
// e o segundo
public static int[] diferenca(int[] primeiro, int[] segundo) {
Set set = Arrays.stream(segundo).boxed().collect(Collectors.toSet());
return Arrays.stream(primeiro)
.filter(v -> !set.contains(v))
.toArray();
}
}
Ao executar este código Java nós teremos o seguinte resultado: Primeiro vetor: [1, 2, 3, 4, 5] Segundo vetor: [2, 3, 7, 8, 9] Vetor diferença a e b: [1, 4, 5] |
|
|
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





