Recap - HashMap
CoddyのC#ジャーニー「ロジックとフロー」セクションの一部 — レッスン 51/66。
チャレンジ
簡単ProcessDictionary という名前のメソッドを作成してください。このメソッドは Dictionary<string, int> と操作の配列をパラメータとして受け取り、次の操作を実行します:
- 操作が "GET key" の場合、そのキーの値を出力するか、キーが存在しない場合は "Not found" を出力します
- 操作が "CHECK key" の場合、キーが存在する場合は "Exists" を出力し、そうでなければ "Not found" を出力します
- 操作が "MODIFY key value" の場合、以下を実行します:
- キーが存在し、提供された値と同じ場合、その値を 1 増やします
- キーが存在するが値が異なる場合、キーを削除します
- キーが存在しない場合、提供された値で追加します
すべての操作を処理した後、更新された Dictionary を返します。
自分で試してみよう
using System;
using System.Collections.Generic;
class Program
{
public static Dictionary<string, int> ProcessDictionary(Dictionary<string, int> data, string[] operations)
{
// ここにコードを記述してください
}
static void Main(string[] args)
{
// いくつかのデータで辞書を初期化
Dictionary<string, int> data = new Dictionary<string, int>
{
{ "Apple", 10 },
{ "Banana", 5 },
{ "Orange", 7 }
};
// サンプル操作
string[] operations = new string[]
{
"GET Apple",
"CHECK Mango",
"MODIFY Banana 5",
"MODIFY Orange 8",
"MODIFY Mango 3"
};
Dictionary<string, int> result = ProcessDictionary(data, operations);
// 結果を表示
Console.WriteLine("Updated Dictionary:");
foreach (var item in result)
{
Console.WriteLine($"{item.Key}: {item.Value}");
}
}
}ロジックとフローのすべてのレッスン
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