Come usare LINQ per trovare il massimo in un elenco

April 16

Come usare LINQ per trovare il massimo in un elenco


Language Integrated Query è una tecnologia utilizzata per i linguaggi di programmazione .NET per eseguire query sui dati. LINQ consente agli sviluppatori di interrogare, filtrare e trasformare insiemi di dati utilizzando la sintassi lingua madre. Una delle funzioni di base di aggregazione LINQ è Max, che trova e restituisce il valore massimo in un set di risultati di una query.

istruzione

1 Dichiarare e inizializzare una fonte di raccolta o di dati che implementa l'interfaccia IEnumerable <T>. Qualsiasi IEnumerable <T> sorgente può essere interrogato utilizzando LINQ.

C # Esempio:

int [] exampleArray = {5, 8, 3, 12, 37, 22, 19};

2 Utilizzare l'operatore Max per trovare il più alto valore nell'origine dati. Max invoca una operazione di trasformazione su ogni elemento nell'origine dati e quindi restituisce il risultato più alto. Per trovare semplicemente il valore più alto in un array, Max può essere utilizzato senza alcun parametro.

C # Esempio:

int [] exampleArray = {5, 8, 3, 12, 37, 22, 19};

// Restituisce 37

int più alto = exampleArray.Max ();

3 Utilizzare un'espressione lambda per eseguire un'operazione su ogni elemento nell'origine dati. Un'espressione lambda è un tipo di funzione anonima che viene creata usando il "=>" operatore lambda.

C # Esempio:

int [] exampleArray = {5, 8, 3, 12, 37, 22, 19};

// Sottrae ciascun elemento della matrice 50 e quindi trova il valore massimo assoluto.

// L'elemento attualmente elaborato è rappresentato dalla variabile i, che è definita dalla dichiarazione "i =>"

// Restituisce 47, che è il risultato di Abs (femmina 3 - 50);

int più alto = exampleArray.Max (i => System.Math.Abs ​​(I - 50));