ملخص - HashMap
جزء من قسم Logic & Flow في رحلة C# على Coddy — الدرس 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}");
}
}
}جميع دروس Logic & Flow
1المصفوفات متعددة الأبعاد
أساسيات المصفوفات ثنائية الأبعادتعريف وتهيئة المصفوفات ثنائية الأبعادالوصول إلى عناصر المصفوفة ثنائية الأبعادالحلقات المتداخلة مع المصفوفات ثنائية الأبعادالمصفوفات المتعرجة (Jagged Arrays)عمليات المصفوفات الشائعةمراجعة - المصفوفات متعددة الأبعاد4تقنيات التحكم في التدفق
الإرجاع المبكرشروط الحمايةجمل القفز (goto)Break و Continueتسطيح الشروط المتداخلة7المعاملات المنطقية المتقدمة
التقييم المختصرالمعاملات المنطقية الشرطيةأولوية المعاملاتمراجعة - المعاملات المتقدمة2اتخاذ القرارات المتقدم
الشروط المتعددةالمنطق البولياني المعقدمقارنة بين If و Switchجمل Switch المتداخلةمراجعة - القرارات المتقدمة5معالجة الاستثناءات
أساسيات Try-Catchأنواع الاستثناءاتكتل Catch المتعددةالتعامل مع الملفاتكتلة FinallyUsing مقابل Try-Finallyاستثناءات مخصصةمراجعة - معالجة الأخطاء8نظام تحليل البيانات
إعداد جمع البياناتمنطق إدخال البيانات11HashSet الجزء الأول
ما هو الـ HashSet؟إضافة عنصرحذف عنصرالتحقق من وجود عنصرالفراغ والحجمملخص - HashSet3تحسينات الحلقات التكرارية
أداء الحلقات التكراريةالتكرار عبر البيانات المعقدةأنواع الحلقات التكراريةإعادة هيكلة الحلقات التكراريةملخص - الحلقات المحسنة6التعامل مع الـ Null
أساسيات الـ Null Referenceأنواع القيم القابلة للـ Nullأنماط التحقق من الـ Nullالبرمجة الدفاعيةملخص - أمان الـ Null9HashMap الجزء الأول
ما هو الـ HashMap؟تعريف HashMapالتحقق من وجود المفتاحالوصول إلى القيمتعديل القواميسملخص - HashMap