Declarar un HashMap
Parte de la sección Lógica y Flujo del Journey de C# de Coddy. Lección 47 de 66.
En C#, el equivalente de un HashMap se llama Dictionary. Te permite almacenar pares clave-valor para realizar búsquedas eficientes.
Primero, creemos un diccionario vacío:
Dictionary<string, int> fruitInventory = new Dictionary<string, int>();Esto crea un Diccionario donde las claves son strings (nombres de frutas) y los valores son enteros (cantidad).
Ahora, agreguemos algunos elementos a nuestro diccionario:
fruitInventory.Add("Apple", 10);
fruitInventory.Add("Banana", 15);Después de ejecutar el código anterior, nuestro fruitInventory contiene:
- "Apple" → 10
- "Banana" → 15
También puedes inicializar un diccionario con valores:
Dictionary<string, int> fruitInventory = new Dictionary<string, int>()
{
{ "Apple", 10 },
{ "Banana", 15 }
};Desafío
IntermedioCrea un método llamado CreateFruitInventory que:
- Crea un diccionario nuevo con claves de tipo string y valores de tipo int
- Añade las siguientes frutas y cantidades:
- "Apple" con una cantidad de 5
- "Banana" con una cantidad de 10
- "Orange" con una cantidad de 7
- Devuelve el diccionario creado
Pruébalo tú mismo
using System;
using System.Collections.Generic;
class Program
{
public static Dictionary<string, int> CreateFruitInventory()
{
// Escribe tu código aquí
}
static void Main(string[] args)
{
Dictionary<string, int> inventory = CreateFruitInventory();
// Mostrar el inventario
foreach (var item in inventory)
{
Console.WriteLine($"{item.Key}: {item.Value}");
}
}
}Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Lógica y Flujo
1Arrays multidimensionales
Conceptos básicos de arrays 2DDeclaración e inicialización de arrays 2DAcceso a elementos de arrays 2DBucles anidados con arrays 2DArrays irregularesOperaciones comunes con matricesRepaso: arrays multidimensionales4Técnicas de control de flujo
Retornos anticipadosCláusulas de guardaSentencias de salto (goto)Break y ContinueAplanar condicionales anidados7Operadores lógicos avanzados
Evaluación de cortocircuitoOperadores lógicos condicionalesPrecedencia de operadoresRepaso: operadores avanzados2Toma de decisiones avanzada
Múltiples condicionesLógica booleana complejaComparación entre If y SwitchSentencias Switch anidadasRepaso: decisiones avanzadas5Manejo de excepciones
Fundamentos de Try-CatchTipos de excepcionesMúltiples bloques CatchTrabajo con archivosBloque FinallyUso de Using frente a Try-FinallyExcepciones personalizadasRepaso: manejo de errores3Mejoras de bucles
Rendimiento de buclesIteración de estructuras complejasCada tipo de bucleRefactorización de buclesRepaso: bucles optimizados6Manejo de valores nulos
Conceptos básicos de referencias nulasTipos de valor anulablesPatrones de comprobación de valores nulosProgramación defensivaRepaso: seguridad frente a valores nulos9HashMap Parte 1
¿Qué es un HashMap?Declarar un HashMapComprobar si existe una claveAcceder a los valoresModificar diccionariosRepaso - HashMapPractica por tu cuenta: Compilador de C# online