Enumerable.IntersectBy Método

Definición

Sobrecargas

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

Genera la intersección de conjuntos de dos secuencias según una función de selector de claves especificada.

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

Genera la intersección de conjuntos de dos secuencias según una función de selector de claves especificada.

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

Genera la intersección de conjuntos de dos secuencias según una función de selector de claves 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

Tipo de los elementos de las secuencias de entrada.

TKey

Tipo de clave por el que se van a identificar los elementos.

Parámetros

first
IEnumerable<TSource>

Interfaz IEnumerable<T> de la que se van a devolver los distintos elementos que también aparecen en second.

second
IEnumerable<TKey>

Una interfaz IEnumerable<T> de la que se van a devolver los distintos elementos que también aparecen en la primera secuencia.

keySelector
Func<TSource,TKey>

Función para extraer la clave de cada elemento.

comparer
IEqualityComparer<TKey>

IEqualityComparer<T> para comparar claves.

Devoluciones

IEnumerable<TSource>

Una secuencia que contiene los elementos que forman la intersección de conjuntos de dos secuencias.

Excepciones

first o second es null.

Comentarios

Este método se implementa mediante la ejecución diferida. El valor devuelto inmediato es un objeto que almacena toda la información necesaria para realizar la acción. La consulta representada por este método no se ejecuta hasta que el objeto se enumera llamando directamente a su GetEnumerator método o mediante foreach en C# o For Each en Visual Basic.

La intersección de dos conjuntos A y B se define como el conjunto que contiene todos los elementos de A que también aparecen en B, pero ningún otro elemento.

Cuando se enumera el objeto devuelto por este método, Intersect produce elementos distintos que se producen en ambas secuencias en el orden en que aparecen en first.

Si comparer es null, el comparador de igualdad predeterminado, Default, se usa para comparar valores.

Consulte también

Se aplica a

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

Genera la intersección de conjuntos de dos secuencias según una función de selector de claves 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

Tipo de los elementos de las secuencias de entrada.

TKey

Tipo de clave por el que se van a identificar los elementos.

Parámetros

first
IEnumerable<TSource>

Interfaz IEnumerable<T> de la que se van a devolver los distintos elementos que también aparecen en second.

second
IEnumerable<TKey>

Una interfaz IEnumerable<T> de la que se van a devolver los distintos elementos que también aparecen en la primera secuencia.

keySelector
Func<TSource,TKey>

Función para extraer la clave de cada elemento.

Devoluciones

IEnumerable<TSource>

Una secuencia que contiene los elementos que forman la intersección de conjuntos de dos secuencias.

Excepciones

first o second es null.

Comentarios

Este método se implementa mediante la ejecución diferida. El valor devuelto inmediato es un objeto que almacena toda la información necesaria para realizar la acción. La consulta representada por este método no se ejecuta hasta que el objeto se enumera llamando directamente a su GetEnumerator método o mediante foreach en C# o For Each en Visual Basic.

La intersección de dos conjuntos A y B se define como el conjunto que contiene todos los elementos de A que también aparecen en B, pero ningún otro elemento.

Cuando se enumera el objeto devuelto por este método, Intersect produce elementos distintos que se producen en ambas secuencias en el orden en que aparecen en first.

El comparador de igualdad predeterminado, Default, se usa para comparar valores.

Consulte también

Se aplica a