Recap - HashMap
Parte de la sección Lógica y Flujo del Journey de C# de Coddy — lección 51 de 66.
Desafío
FácilCrea un método llamado ProcessDictionary que tome un Dictionary<string, int> y un array de operaciones como parámetros. El método debe realizar estas operaciones:
- Si la operación es "GET key", imprime el valor para esa clave o "Not found" si la clave no existe
- Si la operación es "CHECK key", imprime "Exists" si la clave existe, de lo contrario imprime "Not found"
- Si la operación es "MODIFY key value", haz lo siguiente:
- Si la clave existe y tiene el mismo valor proporcionado, aumenta su valor en 1
- Si la clave existe pero tiene un valor diferente, elimina la clave
- Si la clave no existe, agrégala con el valor proporcionado
Devuelve el Dictionary actualizado después de procesar todas las operaciones.
Pruébalo tú mismo
using System;
using System.Collections.Generic;
class Program
{
public static Dictionary<string, int> ProcessDictionary(Dictionary<string, int> data, string[] operations)
{
// Escribe tu código aquí
}
static void Main(string[] args)
{
// Inicializa un diccionario con algunos datos
Dictionary<string, int> data = new Dictionary<string, int>
{
{ "Apple", 10 },
{ "Banana", 5 },
{ "Orange", 7 }
};
// Operaciones de muestra
string[] operations = new string[]
{
"GET Apple",
"CHECK Mango",
"MODIFY Banana 5",
"MODIFY Orange 8",
"MODIFY Mango 3"
};
Dictionary<string, int> result = ProcessDictionary(data, operations);
// Mostrar el resultado
Console.WriteLine("Updated Dictionary:");
foreach (var item in result)
{
Console.WriteLine($"{item.Key}: {item.Value}");
}
}
}Todas las lecciones de Lógica y Flujo
1Multi-dimensional Arrays
2D Arrays BasicsDeclaring and Initializing 2DAccessing 2D Array ElementsNested Loops with 2D ArraysJagged ArraysCommon Matrix OperationsRecap - Multi-dimensional4Flow Control Techniques
Early ReturnsGuard ClausesJump Statements (goto)Break and ContinueFlatten Nested Conditionals7Logical Operators Advanced
Short-Circuit EvaluationConditional Logical OperatorsOperator PrecedenceRecap - Advanced Operators2Advanced Decision Making
Multiple ConditionsComplex Boolean LogicIf vs. Switch ComparisonNested Switch StatementsRecap - Advanced Decisions5Exception Handling
Try-Catch BasicsException TypesMultiple Catch BlocksWorking with FilesFinally BlockUsing vs. Try-FinallyCustom ExceptionsRecap - Error Handling3Loop Enhancements
Loop PerformanceIterating ComplexEach Loop TypeRefactoring LoopsRecap - Optimized Loops6Null Handling
Null Reference BasicsNullable Value TypesNull Checking PatternsDefensive ProgrammingRecap - Null Safety9HashMap Part 1
What is a HashMap?Declare a HashMapCheck If Key ExistsAccessing ValuesModifying DictionariesRecap - HashMap