Enumerable.MinBy Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Overload
| Nome | Descrizione |
|---|---|
| MinBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Restituisce il valore minimo in una sequenza generica in base a una funzione del selettore di chiave specificata. |
| MinBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>) |
Restituisce il valore minimo in una sequenza generica in base a una funzione del selettore di chiave e all'operatore di confronto dei tasti specificato. |
MinBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)
- Origine:
- Min.cs
- Origine:
- Min.cs
- Origine:
- Min.cs
- Origine:
- Min.cs
- Origine:
- Min.cs
Restituisce il valore minimo in una sequenza generica in base a una funzione del selettore di chiave specificata.
public:
generic <typename TSource, typename TKey>
[System::Runtime::CompilerServices::Extension]
static TSource MinBy(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, TKey> ^ keySelector);
public static TSource? MinBy<TSource,TKey>(this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,TKey> keySelector);
static member MinBy : seq<'Source> * Func<'Source, 'Key> -> 'Source
<Extension()>
Public Function MinBy(Of TSource, TKey) (source As IEnumerable(Of TSource), keySelector As Func(Of TSource, TKey)) As TSource
Parametri di tipo
- TSource
Tipo degli elementi di source.
- TKey
Tipo di chiave per cui confrontare gli elementi.
Parametri
- source
- IEnumerable<TSource>
Sequenza di valori per determinare il valore minimo di .
- keySelector
- Func<TSource,TKey>
Funzione per estrarre la chiave per ogni elemento.
Valori restituiti
Valore con la chiave minima nella sequenza.
Eccezioni
source è null.
Nessuna chiave estratta da source implementa l'interfaccia IComparable o IComparable<T> .
TSource è un tipo primitivo e la sequenza di origine è vuota.
Esempio
Nell'esempio di codice seguente viene illustrato come usare MinBy per trovare il valore minimo in una raccolta in base a una proprietà specifica.
(string Name, decimal Salary, int Age)[] employees =
{
("Mahmoud", 1000m, 22),
("John", 1200m, 28),
("Sara", 2000m, 32),
("Hadi", 1750m, 27),
("Lana", 1500m, 24),
("Luna", 1850m, 33)
};
// Get the youngest employee in the company.
var youngestEmployee = employees.MinBy(employee => employee.Age);
Console.WriteLine($"Name: {youngestEmployee.Name}, Age: {youngestEmployee.Age}, Salary: ${youngestEmployee.Salary}");
/*
This code produces the following output:
Name: Mahmoud, Age: 22, Salary: $1000
*/
</Formato>
Commenti
Se la sequenza di origine è vuota, sono possibili due risultati possibili a seconda del tipo di origine. Se TSource è un tipo nullable, questo metodo restituisce null. Se TSource è uno struct non nullable, ad esempio un tipo primitivo, viene generata un'eccezione InvalidOperationException .
Se la sequenza di origine contiene solo valori , nullquesto metodo restituisce null.
<format type="text/markdown">
Si applica a
MinBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>)
- Origine:
- Min.cs
- Origine:
- Min.cs
- Origine:
- Min.cs
- Origine:
- Min.cs
- Origine:
- Min.cs
Restituisce il valore minimo in una sequenza generica in base a una funzione del selettore di chiave e all'operatore di confronto dei tasti specificato.
public:
generic <typename TSource, typename TKey>
[System::Runtime::CompilerServices::Extension]
static TSource MinBy(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, TKey> ^ keySelector, System::Collections::Generic::IComparer<TKey> ^ comparer);
public static TSource? MinBy<TSource,TKey>(this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,TKey> keySelector, System.Collections.Generic.IComparer<TKey>? comparer);
static member MinBy : seq<'Source> * Func<'Source, 'Key> * System.Collections.Generic.IComparer<'Key> -> 'Source
<Extension()>
Public Function MinBy(Of TSource, TKey) (source As IEnumerable(Of TSource), keySelector As Func(Of TSource, TKey), comparer As IComparer(Of TKey)) As TSource
Parametri di tipo
- TSource
Tipo degli elementi di source.
- TKey
Tipo di chiave per cui confrontare gli elementi.
Parametri
- source
- IEnumerable<TSource>
Sequenza di valori per determinare il valore minimo di .
- keySelector
- Func<TSource,TKey>
Funzione per estrarre la chiave per ogni elemento.
- comparer
- IComparer<TKey>
Oggetto IComparer<T> da confrontare.
Valori restituiti
Valore con la chiave minima nella sequenza.
Eccezioni
source è null.
Nessuna chiave estratta da source implementa l'interfaccia IComparable o IComparable<T> .
TSource è un tipo primitivo e la sequenza di origine è vuota.
Esempio
Nell'esempio di codice seguente viene illustrato come usare MinBy con un operatore di confronto personalizzato per ignorare la distinzione tra maiuscole e minuscole durante il controllo del valore minimo.
(string Name, int Quantity)[] inventory =
{
("apple", 10),
("BANANA", 5),
("Cherry", 20)
};
// Find the product with the minimum name alphabetically, ignoring casing differences.
// 'a' is correctly identified as smaller than 'B' when case is ignored.
var minIgnoreCase = inventory.MinBy(item => item.Name, StringComparer.OrdinalIgnoreCase);
Console.WriteLine($"Case-insensitive comparison: {minIgnoreCase.Name}");
/*
This code produces the following output:
Case-insensitive comparison: apple
*/
</Formato>
Commenti
Se la sequenza di origine è vuota, sono possibili due risultati possibili a seconda del tipo di origine. Se TSource è un tipo nullable, questo metodo restituisce null. Se TSource è uno struct non nullable, ad esempio un tipo primitivo, viene generata un'eccezione InvalidOperationException .
Se la sequenza di origine contiene solo valori , nullquesto metodo restituisce null.
<format type="text/markdown">