Enumerable.IntersectBy Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Przeciążenia
| IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Tworzy przecięcie zestawu dwóch sekwencji zgodnie z określoną funkcją selektora kluczy. |
| IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>) |
Tworzy przecięcie zestawu dwóch sekwencji zgodnie z określoną funkcją selektora kluczy. |
IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>, IEqualityComparer<TKey>)
Tworzy przecięcie zestawu dwóch sekwencji zgodnie z określoną funkcją selektora kluczy.
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)
Parametry typu
- TSource
Typ elementów sekwencji wejściowych.
- TKey
Typ klucza do identyfikowania elementów według.
Parametry
- first
- IEnumerable<TSource>
Zwrócone IEnumerable<T> zostaną odrębne elementy, które również pojawią się w second obiekcie.
- second
- IEnumerable<TKey>
Zwrócone IEnumerable<T> zostaną odrębne elementy, które również pojawią się w pierwszej sekwencji.
- keySelector
- Func<TSource,TKey>
Funkcja wyodrębniania klucza do każdego elementu.
- comparer
- IEqualityComparer<TKey>
Element do IEqualityComparer<T> porównywania kluczy.
Zwraca
- IEnumerable<TSource>
Sekwencja zawierająca elementy, które tworzą przecięcie zestawu dwóch sekwencji.
Wyjątki
first lub second to null.
Uwagi
Ta metoda jest implementowana za pomocą odroczonego wykonania. Bezpośrednio zwracana wartość jest obiektem, który przechowuje wszystkie informacje wymagane do wykonania akcji. Zapytanie reprezentowane przez tę metodę nie jest wykonywane, dopóki obiekt nie zostanie wyliczony przez wywołanie metody GetEnumerator bezpośrednio lub przy użyciu w foreach języku Visual C# lub For Each w Visual Basic.
Skrzyżowanie dwóch zestawów A i B jest definiowane jako zestaw zawierający wszystkie elementy A, które również pojawiają się w B, ale nie inne elementy.
Gdy obiekt zwrócony przez tę metodę jest wyliczany, Intersect zwraca różne elementy występujące w obu sekwencjach w kolejności, w której są wyświetlane w firstobiekcie .
Jeśli comparer jest to null, domyślnym porównaniem równości, Defaultjest używany do porównywania wartości.
Zobacz też
Dotyczy
IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>)
Tworzy przecięcie zestawu dwóch sekwencji zgodnie z określoną funkcją selektora kluczy.
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)
Parametry typu
- TSource
Typ elementów sekwencji wejściowych.
- TKey
Typ klucza do identyfikowania elementów według.
Parametry
- first
- IEnumerable<TSource>
Zwrócone IEnumerable<T> zostaną odrębne elementy, które również pojawią się w second obiekcie.
- second
- IEnumerable<TKey>
Zwrócone IEnumerable<T> zostaną odrębne elementy, które również pojawią się w pierwszej sekwencji.
- keySelector
- Func<TSource,TKey>
Funkcja wyodrębniania klucza do każdego elementu.
Zwraca
- IEnumerable<TSource>
Sekwencja zawierająca elementy, które tworzą przecięcie zestawu dwóch sekwencji.
Wyjątki
first lub second to null.
Uwagi
Ta metoda jest implementowana za pomocą odroczonego wykonania. Bezpośrednio zwracana wartość jest obiektem, który przechowuje wszystkie informacje wymagane do wykonania akcji. Zapytanie reprezentowane przez tę metodę nie jest wykonywane, dopóki obiekt nie zostanie wyliczony przez wywołanie metody GetEnumerator bezpośrednio lub przy użyciu w foreach języku Visual C# lub For Each w Visual Basic.
Skrzyżowanie dwóch zestawów A i B jest definiowane jako zestaw zawierający wszystkie elementy A, które również pojawiają się w B, ale nie inne elementy.
Gdy obiekt zwrócony przez tę metodę jest wyliczany, Intersect zwraca różne elementy występujące w obu sekwencjach w kolejności, w której są wyświetlane w firstobiekcie .
Domyślny porównujący równość , Defaultsłuży do porównywania wartości.