Compartilhar via


Enumerable.IntersectBy Método

Definição

Sobrecargas

IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Produz a interseção definida de duas sequências de acordo com uma função de seletor de chave especificada.

IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>)

Produz a interseção definida de duas sequências de acordo com uma função de seletor de chave especificada.

IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Origem:
Intersect.cs
Origem:
Intersect.cs
Origem:
Intersect.cs

Produz a interseção definida de duas sequências de acordo com uma função de seletor de chave especificada.

public:
generic <typename TSource, typename TKey>
[System::Runtime::CompilerServices::Extension]
 static System::Collections::Generic::IEnumerable<TSource> ^ IntersectBy(System::Collections::Generic::IEnumerable<TSource> ^ first, System::Collections::Generic::IEnumerable<TKey> ^ second, Func<TSource, TKey> ^ keySelector, System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
public static System.Collections.Generic.IEnumerable<TSource> IntersectBy<TSource,TKey> (this System.Collections.Generic.IEnumerable<TSource> first, System.Collections.Generic.IEnumerable<TKey> second, Func<TSource,TKey> keySelector, System.Collections.Generic.IEqualityComparer<TKey>? comparer);
static member IntersectBy : seq<'Source> * seq<'Key> * Func<'Source, 'Key> * System.Collections.Generic.IEqualityComparer<'Key> -> seq<'Source>
<Extension()>
Public Function IntersectBy(Of TSource, TKey) (first As IEnumerable(Of TSource), second As IEnumerable(Of TKey), keySelector As Func(Of TSource, TKey), comparer As IEqualityComparer(Of TKey)) As IEnumerable(Of TSource)

Parâmetros de tipo

TSource

O tipo dos elementos das sequências de entrada.

TKey

O tipo de chave pelo qual identificar elementos.

Parâmetros

first
IEnumerable<TSource>

Um IEnumerable<T> cujos elementos distintos que também aparecem em second serão retornados.

second
IEnumerable<TKey>

Um IEnumerable<T> cujos elementos distintos que também aparecem na primeira sequência serão retornados.

keySelector
Func<TSource,TKey>

Uma função para extrair a chave de cada elemento.

comparer
IEqualityComparer<TKey>

Um IEqualityComparer<T> para comparar chaves.

Retornos

IEnumerable<TSource>

Uma sequência que contém os elementos que formam a interseção de conjunto de duas sequências.

Exceções

first ou second é null.

Comentários

Esse método é implementado usando a execução adiada. O valor retornado imediato é um objeto que armazena todas as informações necessárias para executar a ação. A consulta representada por esse método não é executada até que o objeto seja enumerado chamando seu GetEnumerator método diretamente ou usando foreach em C# ou For Each no Visual Basic.

A interseção de dois conjuntos A e B é definida como o conjunto que contém todos os elementos de A que também aparecem em B, mas nenhum outro elemento.

Quando o objeto retornado por esse método é enumerado, Intersect produz elementos distintos que ocorrem em ambas as sequências na ordem em que aparecem em first.

Se comparer for null, o comparador de igualdade padrão, Default, será usado para comparar valores.

Confira também

Aplica-se a

IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>)

Origem:
Intersect.cs
Origem:
Intersect.cs
Origem:
Intersect.cs

Produz a interseção definida de duas sequências de acordo com uma função de seletor de chave especificada.

public:
generic <typename TSource, typename TKey>
[System::Runtime::CompilerServices::Extension]
 static System::Collections::Generic::IEnumerable<TSource> ^ IntersectBy(System::Collections::Generic::IEnumerable<TSource> ^ first, System::Collections::Generic::IEnumerable<TKey> ^ second, Func<TSource, TKey> ^ keySelector);
public static System.Collections.Generic.IEnumerable<TSource> IntersectBy<TSource,TKey> (this System.Collections.Generic.IEnumerable<TSource> first, System.Collections.Generic.IEnumerable<TKey> second, Func<TSource,TKey> keySelector);
static member IntersectBy : seq<'Source> * seq<'Key> * Func<'Source, 'Key> -> seq<'Source>
<Extension()>
Public Function IntersectBy(Of TSource, TKey) (first As IEnumerable(Of TSource), second As IEnumerable(Of TKey), keySelector As Func(Of TSource, TKey)) As IEnumerable(Of TSource)

Parâmetros de tipo

TSource

O tipo dos elementos das sequências de entrada.

TKey

O tipo de chave pelo qual identificar elementos.

Parâmetros

first
IEnumerable<TSource>

Um IEnumerable<T> cujos elementos distintos que também aparecem em second serão retornados.

second
IEnumerable<TKey>

Um IEnumerable<T> cujos elementos distintos que também aparecem na primeira sequência serão retornados.

keySelector
Func<TSource,TKey>

Uma função para extrair a chave de cada elemento.

Retornos

IEnumerable<TSource>

Uma sequência que contém os elementos que formam a interseção de conjunto de duas sequências.

Exceções

first ou second é null.

Comentários

Esse método é implementado usando a execução adiada. O valor retornado imediato é um objeto que armazena todas as informações necessárias para executar a ação. A consulta representada por esse método não é executada até que o objeto seja enumerado chamando seu GetEnumerator método diretamente ou usando foreach em C# ou For Each no Visual Basic.

A interseção de dois conjuntos A e B é definida como o conjunto que contém todos os elementos de A que também aparecem em B, mas nenhum outro elemento.

Quando o objeto retornado por esse método é enumerado, Intersect produz elementos distintos que ocorrem em ambas as sequências na ordem em que aparecem em first.

O comparador de igualdade padrão, Default, é usado para comparar valores.

Confira também

Aplica-se a