Eseguire una query LINQ su un array restituendo il valore e l'indice
Scritto da
Massimo Bonanni il
lunedì 24 ottobre 2011
•
Linguaggio:
• Livello: 100
Supponiamo di avere un array e di voler eseguire una
query LINQ restituendo,
contemporaneamente, il valore che verifica una determinata
condizione e l'indice corrispondente a tale
valore.
Ad esempio, sia Integers l'array di interi definito nel seguente
modo:
VB.NET
Dim integers = {1, 2, 5, 4, 8, 9, 10, 13, 45, 67, 89, 32, 74}
e supponiamo di voler recuperare i numeri pari con il relativo
indice:
VB.NET
Dim evens = integers.Select(Function(v, i) New With {.Value = v, .Index = i}) _
.Where(Function(a) a.Value Mod 2 = 0)
L'extension method Select recupera una collezione di anonymous type
formati dal valore contenuto nell'array (proprietà Value) e dal suo
indice (proprietà Index) su cui possiamo eseguire
nuovamente delle operazioni.
Tags: Linq