typestar

Zip en C#

Recorrer secuencias paralelas al mismo paso.

var names = new[] { "latency", "errors", "uptime" };
var values = new[] { 42.1, 0.2, 99.95 };
var units = new[] { "ms", "%", "%" };

// Zip recorre las secuencias al paso, parando en la más corta
foreach (var (name, value) in names.Zip(values))
{
    Console.WriteLine($"{name}: {value}");
}

// la sobrecarga de tres entradas produce ternas
foreach (var (name, value, unit) in names.Zip(values, units))
{
    Console.WriteLine($"{name,-8} {value}{unit}");
}

Cómo funciona

  1. names.Zip(values) empareja elementos hasta que el lado más corto se acaba.
  2. Los pares se deconstruyen directo en las variables del bucle.
  3. Una tercera secuencia forma tríos con la misma forma.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
15
Caracteres a escribir
450
Tokens
98
Ritmo de tres estrellas
90 tpm

Al ritmo de tres estrellas de 90 tokens por minuto, este intento toma unos 65 segundos.

Escribe este fragmento

Paso 3 de 3 en Dar forma; paso 3 de 17 en LINQ a fondo.

← Anterior Siguiente →