Declare a HashMap
Часть раздела Логика и управление потоком путешествия по C# на Coddy — урок 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, который:
- Создает новый Dictionary с ключами типа string и значениями типа int
- Добавляет следующие фрукты и их количество:
- "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