يعد فهم فئة HashMap أمرًا ضروريًا للمطورين، سواء في التطبيقات أو المقابلات في العالم الحقيقي. في هذا المنشور، سنستكشف كيفية إدراج وتحديث وإدارة أزواج القيمة الرئيسية في HashMap. ستضع هذه المعرفة أيضًا الأساس لمقالتنا التالية، حيث سنتعمق في HashSet ونرى كيف ترتبط المجموعتان.
تقوم HashMap بتخزين البيانات على شكل أزواج ذات قيمة رئيسية، مما يسمح بعمليات البحث والتحديثات والحذف الفعالة. وفيما يلي بعض الخصائص الهامة:
دعونا نستكشف هذه السلوكيات بمزيد من التفاصيل من خلال مقتطفات التعليمات البرمجية.
تضيف طريقة put () زوجًا من القيمة الرئيسية إلى الخريطة. ومع ذلك، إذا كان المفتاح موجودًا بالفعل، فسيتم استبدال القيمة القديمة.
Mapmap = new HashMap(); // Insert two key-value pairs map.put(1, 2); map.put(2, 3);
توضيح:
هنا نقوم بإدراج إدخالين:
الآن، ماذا يحدث إذا حاولنا إدراج قيمة جديدة بنفس المفتاح؟
// Replacing an existing value map.put(2, 4); // Key 2 already exists, so the value is replaced.
المفتاح 2 موجود بالفعل بالقيمة 3، ولكن عندما نستدعي put(2, 4)، فإن القيمة الجديدة 4 تحل محل القيمة القديمة. هذا هو السلوك الافتراضي لـ HashMap.
في العديد من المواقف، قد لا ترغب في استبدال القيم إذا كان المفتاح موجودًا بالفعل - يمكن أن يؤدي ذلك إلى فقدان البيانات إذا لم يتم التعامل معه بعناية. في مثل هذه الحالات، يمكننا استخدام طريقة putIfAbsent().
// Ensuring value isn't replaced if key exists map.putIfAbsent(2, 5);
تقوم طريقة putIfAbsent() بإدراج قيمة فقط إذا كان المفتاح المحدد غير موجود بالفعل في الخريطة. نظرًا لأن المفتاح 2 مرتبط بالفعل بالقيمة 4، فإن استدعاء الطريقة هنا ليس له أي تأثير.
System.out.println(map); // Output: {1=2, 2=4}
يظهر الإخراج أن المفتاح 2 يحتفظ بالقيمة 4 لأن putIfAbsent() لم يستبدل القيمة الموجودة.
تعد فئة HashMap أداة قوية في Java لتخزين أزواج القيمة الرئيسية، ولكن من المهم فهم سلوكها مع المفاتيح المكررة. معرفة متى تستخدم put() مقابل putIfAbsent() يمكن أن تساعدك على تجنب فقدان البيانات وكتابة تعليمات برمجية فعالة. مع O(1) متوسط التعقيد الزمني للعمليات الأساسية، يعد HashMap خيارًا مفضلاً للعديد من المهام الحرجة للأداء.
ترقبوا المنشور التالي، حيث سنستكشف HashSet وكيف يضمن التفرد باستخدام HashMap داخليًا!
أساسيات جافا
أساسيات مقابلة المصفوفة
أساسيات ذاكرة جافا
تعليمات سعيدة!
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3