Declare a HashMap
CoddyのC#ジャーニー「ロジックとフロー」セクションの一部 — レッスン 47/66。
C#では、HashMapに相当するものはDictionaryと呼ばれます。これを使用すると、効率的な検索のためにキーと値のペアを格納できます。
まず、空の Dictionary を作成しましょう:
Dictionary<string, int> fruitInventory = new Dictionary<string, int>();これは、キーが文字列(果物の名前)で、値が整数(数量)であるDictionaryを作成します。
次に、Dictionaryにいくつかの項目を追加しましょう:
fruitInventory.Add("Apple", 10);
fruitInventory.Add("Banana", 15);上記のコードを実行した後、fruitInventory には以下が含まれます:
- "Apple" → 10
- "Banana" → 15
値を使用して Dictionary を初期化することもできます:
Dictionary<string, int> fruitInventory = new Dictionary<string, int>()
{
{ "Apple", 10 },
{ "Banana", 15 }
};チャレンジ
中級CreateFruitInventory という名前のメソッドを作成してください。このメソッドは以下の処理を行います:
- string 型のキーと int 型の値を持つ新しい Dictionary を作成する
- 以下のフルーツと数量を追加する:
- "Apple"(数量 5)
- "Banana"(数量 10)
- "Orange"(数量 7)
- 作成した Dictionary を返す
チートシート
C#において、Dictionaryは効率的な検索のためにキーと値のペアを格納します:
空のDictionaryを作成する:
Dictionary<string, int> fruitInventory = new Dictionary<string, int>();Dictionaryに項目を追加する:
fruitInventory.Add("Apple", 10);
fruitInventory.Add("Banana", 15);値を使用してDictionaryを初期化する:
Dictionary<string, int> fruitInventory = new Dictionary<string, int>()
{
{ "Apple", 10 },
{ "Banana", 15 }
};自分で試してみよう
using System;
using System.Collections.Generic;
class Program
{
public static Dictionary<string, int> CreateFruitInventory()
{
// ここにコードを記述してください
}
static void Main(string[] args)
{
Dictionary<string, int> inventory = CreateFruitInventory();
// 在庫を表示します
foreach (var item in inventory)
{
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