Sintaxis de métodos de LINQ en Visual Basic
El mismo pipeline como lambdas: Where, Select, Count, Average.
Dim readings = {12.5, 48.0, 7.2, 33.1, 60.4, 21.9}
Dim alerts = readings.
Where(Function(r) r > 30).
Select(Function(r) $"high: {r:F1}").
ToList()
For Each alert In alerts
Console.WriteLine(alert)
Next
Console.WriteLine($"cool ones: {readings.Count(Function(r) r < 20)}")
Console.WriteLine($"mean: {readings.Average():F2}")
Cómo funciona
Function(r) r > 30es el filtro, escrito en línea.- Un punto al final continúa el encadenamiento en la línea siguiente.
Countacepta su propio predicado;Averageno necesita lambda alguna.
Palabras clave y builtins usados aquí
DimEachForNextSelect
El intento, en números
- Líneas
- 13
- Caracteres a escribir
- 326
- Tokens
- 77
- Ritmo de tres estrellas
- 75 tpm
Al ritmo de tres estrellas de 75 tokens por minuto, este intento toma unos 62 segundos.
Paso 2 de 3 en LINQ; paso 11 de 29 en Fundamentos del lenguaje.