كيفية استخدام HashSet في Java؟

Kyfyt Astkhdam Hashset Fy Java



تحتوي Java على فئة مجموعة تسمى HashSet تقوم بتنفيذ واجهة Set التي تستخدم جدول التجزئة للتخزين. يتم استخدامه للاحتفاظ بمجموعة من العناصر المميزة في أي ترتيب. الميزة الرئيسية لاستخدام HashSet هي أنه يسمح بالوصول السريع إلى العناصر ، حيث يستخدم التجزئة لتخزين العناصر. يعد HashSet مثاليًا لإزالة التكرارات وإيجاد العناصر المشتركة بين مجموعتين.

سيوضح هذا الدليل مجموعة HashSet جنبًا إلى جنب مع الأمثلة المحتملة في Java.

كيفية استخدام HashSet في Java؟

لاستخدام HashSet في Java ، قم أولاً باستيراد فئة HashSet. بعد ذلك ، أنشئ كائن HashSet وأضف العناصر باستخدام ' يضيف() ' طريقة. استخدم الوظيفة remove () لإزالة عضو من HashSet.







يمكن للمستخدمين أيضًا استخدام طريقة contains () لحساب ما إذا كان العنصر موجودًا في HashSet. أخيرًا ، للتكرار على العناصر في HashSet ، استخدم حلقة لكل حلقة.



فيما يلي بعض الأمثلة عن كيفية استخدام HashSet في Java:



مثال 1: إزالة التكرارات من ArrayList
إحدى حالات الاستخدام الشائعة لـ HashSet هي إزالة التكرارات من مجموعة. فيما يلي مثال على كيفية استخدام HashSet لإزالة التكرارات من ArrayList:





يستورد جافا. الاستفادة . ArrayList ؛
يستورد جافا. الاستفادة . HashSet ؛

عام فصل RemoveDuplicatesExample {
عام ثابتة فارغ رئيسي ( خيط [ ] أرجس ) {
ArrayList listWithDuplicates = جديد ArrayList ( ) ؛
listWith مكررات. يضيف ( 'تفاحة' ) ؛
listWith مكررات. يضيف ( 'موز' ) ؛
listWith مكررات. يضيف ( 'البرتقالي' ) ؛
listWith مكررات. يضيف ( 'تفاحة' ) ؛
listWith مكررات. يضيف ( 'البرتقالي' ) ؛

HashSet setWithoutDuplicates = جديد HashSet ( listWith مكررات ) ؛
ArrayList listWithoutDuplicates = جديد ArrayList ( setWithoutDuplicates ) ؛

نظام. خارج . println ( 'قائمة مع التكرارات:' + listWith مكررات ) ؛
نظام. خارج . println ( 'قائمة بدون تكرارات:' + listWithoutDuplicates ) ؛
}
}

وصف الكود أعلاه موضح أدناه:

  • أولاً ، قم بإنشاء ArrayList من السلاسل ذات التكرارات.
  • ثم قم بإنشاء HashSet من ArrayList. ذلك لأن HashSet يمكن أن يحتوي فقط على عناصر فريدة ، وهذا يزيل التكرارات بشكل فعال.
  • في النهاية ، قم بإنشاء ArrayList جديد من HashSet للحصول على قائمة بدون تكرارات.

انتاج |



يوضح الإخراج أنه تمت إزالة الازدواجية من القائمة.

مثال 2: إيجاد العناصر المشتركة بين مجموعتين
حالة استخدام أخرى لـ HashSet هي العثور على عناصر مشتركة بين مجموعتين. فيما يلي مثال على كيفية استخدام HashSet للعثور على عناصر مشتركة بين مجموعتين:

يستورد جافا. الاستفادة . HashSet ؛

عام فصل FindCommonElementsExample { // حدد اسم الفصل
عام ثابتة فارغ رئيسي ( خيط [ ] أرجس ) {
HashSet مجموعة 1 = جديد HashSet ( ) ؛
مجموعة 1. يضيف ( 1 ) ؛
مجموعة 1. يضيف ( 2 ) ؛ // أضف قيمًا هنا
مجموعة 1. يضيف ( 3 ) ؛

HashSet مجموعة 2 = جديد HashSet ( ) ؛
مجموعة 2. يضيف ( 2 ) ؛
مجموعة 2. يضيف ( 3 ) ؛ // أضف قيمًا هنا
مجموعة 2. يضيف ( 4 ) ؛

HashSet المشتركةالعناصر = جديد HashSet ( مجموعة 1 ) ؛
العناصر المشتركة. احتفظ بالجميع ( مجموعة 2 ) ؛

نظام. خارج . println ( 'مجموعة 1: ' + مجموعة 1 ) ؛
نظام. خارج . println ( 'المجموعة 2:' + مجموعة 2 ) ؛
نظام. خارج . println ( 'العناصر المشتركة: ' + العناصر المشتركة ) ؛
}
}

الشرح موضح أدناه:

  • أولاً ، قم بإنشاء كائنين HashSet وأضف بعض الأعداد الصحيحة إليهم.
  • بعد ذلك ، قم بإنشاء كائن HashSet جديد وأضف كل العناصر من set1 إليه.
  • بعد ذلك ، قم باستدعاء التابع retainAll () على كائن HashSet الجديد هذا ، مروراً بـ set2 كوسيطة.
  • يزيل بشكل فعال أي عناصر من HashSet الجديدة غير الموجودة في المجموعة 2 ، مع ترك العناصر المشتركة فقط.

انتاج |

يوضح الإخراج أنه تم العثور على العناصر المشتركة بين مجموعتين.

خاتمة

HashSet هي فئة تجميع قوية في Java تستخدم لتخزين مجموعة من العناصر الفريدة بدون ترتيب معين. يوفر طرقًا مثل ' يضيف() '،' يزيل() '، و ' يتضمن() 'لإضافة وإزالة والتحقق من وجود العناصر في HashSet. إنه يتكرر على العناصر وهو بسيط مع حلقة لكل حلقة. من خلال تنفيذ أساليب hashCode () و equals () ، يمكن للمستخدمين أيضًا استخدام كائنات مخصصة في HashSet.

لقد غطى هذا الدليل جميع الأمثلة الممكنة لاستخدام HashSet في Java.