(OBS: Este post é continuação do artigo LINQ Extensions)

Intersect: Produz a interseção de duas coleções, ou seja, retorna uma nova coleção contendo apenas elementos comuns das duas coleções comparadas.

// Intersect: Produz a interseção de duas coleções, ou seja, 
//            retorna uma nova coleção contendo apenas elementos
//            comuns das duas coleções comparadas.
var queryIntersect = Pessoas.Intersect(OutrasPessoas);
foreach (var p in queryIntersect)
    Console.WriteLine(p.Nome);
// Resultado no console: neste caso, Pessoas e OutrasPessoas não possuem
//                       elementos em comum, por isso o resultado é uma
//                       coleção com zero elementos

// Para exemplificar melhor podemos usar números
int[] numeros1 = { 4, 8, 15, 16, 23, 42 };
int[] numeros2 = { 3, 15, 31, 36, 42, 54 };
var numerosComuns = numeros1.Intersect(numeros2);
foreach (int numero in numerosComuns)
    Console.WriteLine(numero);
// Resultado no console:
// 15
// 42
Anúncios