لمحة جافاوية 45: مصفوفة فهارسها ليست أرقام

السلام عليكم

كيف حالكم يا شباب
اشتقت لكم كثيراً
بمناسبة موضوع الاشتياق
فأنا اشتقت للأخ عبده بشكل خاص
ماذا لم أخبركم
غريب يبدو لي أني أخبرتكم
لقد قرر الأخ عبده أن ينضم إلى معسكر العدو
بمعنى أنه قرر أن يتعلم C#
تعرفون أني لا أكن لها محبة عظيمة
لكني أتقبل خيارات الآخرين
وبالتأكيد فأنا أؤيد الأخ عبده في ذلك
على الأقل أنا أعرف أني أحد الذين فرحوا في الخبر
لماذا؟
غريب أمركم يا شباب
أنا لا أكاد أتكلم بحرفين
حتى أسمع عبده باشا يعلق علي
صحيح أن النقض شيء جيد لكن ثقوا بي
ليس بطريقة الأخ عبده
على أي حال لن أقضي الليل كله أكلمكم عن كرهي لعبده
إنه الوقت لتتعلموا شيء مفيد بدلاً من تضييع الوقت في أشياء تافهة
هل أنتم مستعدون؟
إذن فلنبدأ
اليوم سأحدثكم عن HashMap
الجميع هنا يعرف المصفوفة array
لا يحتاج الموضوع إلى مراجعة
كل ما يهمنا منها هو أننا نستخدم الأرقام
لتحديد العنصر الذي نريد إجراء عملية عليه
عند الحديث عن HashMap
فإننا نتحدث عن مصفوفة لكن
ليس بالضرورة أن نستخدم الأرقام لتعريف عنصر ما
وإنما يمكننا استخدام الكائنات
في ما عدا ذلك هي مصفوفة بشكلها الطبيعي
يبدو لي أن هناك لبس في كلامي
لنبسط الأمر إذن
عند التعامل مع HashMap
فإننا نتكلم عن نوعين من الكائنات
النوع الأول الكائن
وهو الكائن الذي نريد تخزينه
النوع الثاني المفتاح أو الفهرس
وهو البديل الحرفي للأرقام التي كنا نستخدمها مسبقاً في المصفوفات
وهو عبارة عن الكائن الذي نستخدمه لإجراء العمليات على الكائنات المخزنة في HashMap
لتوضيح أكثر خذوا هذا المثال

Student[] aray={عبدالله , محمد , أماني , عمر };

تعالوا نستخدم الأزواج المرتبة لتمثيل المصفوفة السابقة
(0،عبد الله)،(1،محمد)،(2،أماني)،(3،عمر)
عبدالله و محمد و أماني و عمر عبارة عن أسماء الكائنات من نوع طالب
نلاحظ أن العنصر الأول من الأزواج المرتبة رقم
في HashMap يختلف الوضع
فليس بالضرورة أن يكون العنصر الأول في الزوج المرتب رقماً
قد يكون كلمة أو حتى كائن آخر
أعتقد أن هناك البعض ما زال لم يفهم وجه الفرق بشكل جيد
تعالوا نجرب بعض الشيفرة code
صدقوني أنها مفيدة جداً للفهم
إليكم خطوات التعامل مع الأخ HashMap
الخطوة الأولى
نصنع كائن من HashMap

HashMap accounts=new HashMap();

ما بين علامتي الأصغر والأكبر
يمثل نوع الكائنات الموجودة في الزوج المرتب الخاص بهذا الـ HashMap
النوع الأول هو نوع الكائن المفتاح
النوع الثاني هو النوع المراد تخزينه
الخطوة الثانية
نخزن الكائنات باستخدام الدالة put

accounts.put(user, student());

الخطوة الثالثة
نبحث عن كائن ما باستخدام كائن من نوع المفتاح كما في الشيفرة التالية

account=accounts.get(user());

الخطوة الأخيرة
نحذف الكائن من الـ HashMap كما في الشيفرة التالية

accounts.remove(user);

هناك دوال أخرى يمكنك الإطلاع عليها
لا تعتقدوا أني سأقوم بشرح كل شيء
لكني أعتقد بأني شبيه بالمعلمين في البناء
الذي يعطي اللمسة الرئيسية للمبتدئين
حتى لا يفسد المبتدئ كل شيء
تكفيكم هذه المعلومات اليوم
أراكم مرة أخرى
وكما قلت سابقاً ظروفي سيئة جداً لكني أحاول أن لا أنساكم

المراجع:
برنامج له علاقة بالشبكات ساعدت الأخ عبده على إنجازه
(أي برنامج هذا يا حيوان)
أخبرتكم أنه فعل معروفاً بانتقاله إلى معسكر العدو لكنكم لم تصدقوني

تحياتي

Tags: , , , , , ,

2 Responses to “لمحة جافاوية 45: مصفوفة فهارسها ليست أرقام”

  1. abuoof قال:

    جزاك الله خير
    دائماً تأتينا بالغامض المفيد
    بعد دراسة هياكل البيانات أصبحنا نفهم الكثير بدون عناء الحمدلله
    الحمدلله فهمت وأن شاء الله نستخدمها أول ما نحتاجها
    جزاك الله خير مرة أخري

  2. admin قال:

    على الرحب والسعة عبد الله
    وأي شيء يصعب عليك نحاول تبسيطه

    تحياتي

Leave a Reply