typestar

ToDictionary en C#

Materializar una consulta en la colección que de verdad vas a usar.

var planets = new[] { (Name: "Mercury", Au: 0.39), (Name: "Mars", Au: 1.52) };

var byName = planets.ToDictionary(p => p.Name, p => p.Au);
Console.WriteLine(byName["Mars"]);

// materializar corre la consulta una vez; reusar el resultado es gratis
var index = Enumerable.Range(0, 5).ToDictionary(i => i, i => i * i);
Console.WriteLine(index[4]);
Console.WriteLine(byName.ContainsKey("Pluto"));

Cómo funciona

  1. Los selectores de clave y valor dan forma al diccionario en una llamada.
  2. Después, cada búsqueda es tiempo constante, sin volver a enumerar.
  3. ContainsKey responde con seguridad por el planeta que falta.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
9
Caracteres a escribir
393
Tokens
106
Ritmo de tres estrellas
90 tpm

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

Escribe este fragmento

Paso 1 de 3 en Materialización y conjuntos; paso 13 de 17 en LINQ a fondo.

← Anterior Siguiente →