كيفية استخدام طريقة التكرار لإزالة عنصر من مجموعة في Java؟

Kyfyt Astkhdam Tryqt Altkrar Lazalt Nsr Mn Mjmw T Fy Java



ال ' مكرر 'طريقة آمنة وسهلة لإزالة أو حذف عناصر بيانات معينة من مجموعة أثناء التكرار عليها. يمنع حدوث ' الاستثناءات المتزامنة التعديل والذي ينشأ عندما تحاول حلقة for المُحسَّنة تعديل المجموعة. يخزن مسار الموقف الحالي ويوفر للمبرمجين فرصة للمضي قدمًا وإزالة العناصر الأساسية حسب الحاجة.

توضح هذه المدونة عملية إزالة عنصر من مجموعة باستخدام طريقة التكرار.







كيفية استخدام طريقة التكرار لإزالة عنصر من مجموعة في Java؟

طريقة المكرر أحادية الاتجاه ويمكن استخدامها مع أنواع المجموعات المختلفة ، بما في ذلك ' ArrayList '، LinkedList '، وما إلى ذلك ، فهي توفر طريقة موحدة لإزالة العناصر من أي مجموعة تنفذ' متوقعة ' واجهه المستخدم.



دعنا نزور بعض الأمثلة لفهم طريقة التكرار بشكل أفضل:



مثال 1: إزالة عناصر معينة من المجموعة باستخدام طريقة التكرار

يمكن استخدام طريقة المكرر مع ' لو عبارات أو حلقات لتحديد العناصر المحددة. ثم ' يزيل () 'تُستخدم لإجراء عملية الحذف كما هو موضح أدناه:





يستورد java.util. * ؛
فصل IterExam
{
عام ثابتة فارغ رئيسي ( خيط [ ] أرجس )
{
ArrayList < عدد صحيح > القائمة التجريبية = جديد ArrayList < عدد صحيح > ( ) ؛
ل ( int أنا = 0 ؛ أنا <= عشرين ؛ أنا = أنا + 2 )
{
القائمة التجريبية. يضيف ( أنا ) ؛
}
التكرار < عدد صحيح > itr = القائمة التجريبية. مكرر ( ) ؛
نظام . خارج . println ( 'ArrayList المتوفرة:' ) ؛

ل ( int أنا = 0 ؛ أنا < القائمة التجريبية. مقاس ( ) ؛ أنا ++ )
{
نظام . خارج . مطبعة ( القائمة التجريبية. يحصل ( أنا ) + '' ) ؛
}
بينما ( itr. hasNext ( ) )
{
لو ( itr. التالي ( ) ٪ 3 == 0 )
itr. يزيل ( ) ؛
}
نظام . خارج . println ( ' بعد إزالة عناصر ArrayList الفردية ' ) ؛
ل ( int أنا = 0 ؛ أنا < القائمة التجريبية. مقاس ( ) ؛ أنا ++ )
{
نظام . خارج . مطبعة ( القائمة التجريبية. يحصل ( أنا ) + '' ) ؛
}
}
}

وصف الكود أعلاه:

  • أولاً ، يتم إنشاء ArrayList ثم مضاعف ' 2 'حتى النطاق' عشرين 'بمساعدة' ل ' حلقة.
  • بعد ذلك ، أعلن عن ' مكرر ”لعرض عناصر ArrayList على وحدة التحكم.
  • ثم استخدم ' hasNext () ”مع كائن المكرر لاجتياز جميع عناصر ArrayList المقيمة.
  • بعد ذلك ، ' لو 'يتم استخدام العبارة للتحقق من العناصر القابلة للقسمة بالكامل على' 3 ' داخله.
  • ثم ' يزيل () 'تستخدم طريقة لحذف العناصر التي يتم إرجاعها بواسطة' لو ' إفادة.
  • في النهاية ، تم عرض ArrayList المحدثة باستخدام ' ل ' حلقة.

بعد التجميع:



يعرض الإخراج العناصر المحددة ، والتي يمكن القسمة على ثلاثة وإزالتها من ArrayList باستخدام طريقة مكرر.

مثال 2: إزالة كل العناصر من المجموعة

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

يستورد java.util. * ؛
فصل الفراغ
{
عام ثابتة فارغ رئيسي ( خيط حج [ ] )
{
المتجه < عدد صحيح > اختبار = جديد المتجه < عدد صحيح > ( ) ؛
اختبار يضيف ( 18 ) ؛
اختبار يضيف ( واحد وعشرين ) ؛
اختبار يضيف ( 25 ) ؛
اختبار يضيف ( 27 ) ؛
اختبار يضيف ( 30 ) ؛

التكرار < عدد صحيح > اجتياز = اختبار مكرر ( ) ؛
نظام . خارج . مطبعة ( 'العناصر الموجودة:' ) ؛
بينما ( اجتياز. hasNext ( ) )
نظام . خارج . مطبعة ( اجتياز. التالي ( ) + '' ) ؛
نظام . خارج . مطبعة ( ' يحتوي ناقل الاختبار على ' + اختبار مقاس ( ) + ' عناصر ' ) ؛
اجتياز = اختبار مكرر ( ) ؛
بينما ( اجتياز. hasNext ( ) )
{
نظام . خارج . مطبعة ( ' إزالة ' + اجتياز. التالي ( ) ) ؛
اجتياز. يزيل ( ) ؛
}
نظام . خارج . println ( ' الآن ، يحتوي testVector على ' + اختبار مقاس ( ) + ' عناصر' ) ؛
}
}

وصف الكود:

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

وصف الكود:

يؤكد الرمز أعلاه أنه قد تمت إزالة جميع العناصر من المجموعة.

مثال 3: إزالة عنصر باستخدام ListIterator

يعمل ListIterator بشكل مشابه لطريقة التكرار. يقوم ListIterator بالانتقال على كلا الجانبين في الاتجاهين الأمامي والخلفي. لإزالة عناصر محددة من المجموعة باستخدام ListIterator في Java ، قم بزيارة الرمز أدناه:

يستورد java.util.ArrayList ؛
يستورد java.util.ListIterator ؛
عام فصل ListIteratorDemo {

// تهيئة الطريقة الرئيسية ()
عام ثابتة فارغ رئيسي ( خيط [ ] أرجس )
{ // إعلان وتهيئة ArrayList
ArrayList < خيط > كبار = جديد ArrayList < خيط > ( ) ؛
كبار يضيف ( 'زُنط' ) ؛
كبار يضيف ( 'عمود' ) ؛
كبار يضيف ( 'Henleys' ) ؛
كبار يضيف ( 'يعرق' ) ؛
كبار يضيف ( 'غير رسمي' ) ؛
كبار يضيف ( 'رفاهية' ) ؛
كبار يضيف ( 'مناسب للوسط الجاف' ) ؛


مُعدل المصنف < خيط > لتر = كبار القائمة ( ) ؛
نظام . خارج . println ( 'قائمة قبل الإزالة' ) ؛
ل ( int أنا = 0 ؛ أنا < كبار مقاس ( ) ؛ أنا ++ )
نظام . خارج . مطبعة ( كبار يحصل ( أنا ) + '' ) ؛
بينما ( لتر. hasNext ( ) ) {
لو ( لتر. التالي ( ) . يساوي ( 'يعرق' ) ) {
لتر. يزيل ( ) ؛
}
}
نظام . خارج . println ( ' قائمة بعد الإزالة ' ) ؛
ل ( int أنا = 0 ؛ أنا < كبار مقاس ( ) ؛ أنا ++ )
نظام . خارج . مطبعة ( كبار يحصل ( أنا ) + '' ) ؛
}
}

وصف الكود أعلاه:

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

بعد التجميع:

تؤكد اللقطة أنه تمت إزالة عنصر البيانات المحدد من المجموعة باستخدام ListIterator.

خاتمة

لإزالة العنصر من مجموعة ، فإن ' يزيل () 'يتم استخدام طريقة المكرر. يمر المكرر عبر ArrayList للعثور على البيانات المستهدفة. بمجرد العثور على ' يزيل () 'تُستخدم لإزالة عنصر البيانات المحدد. إنه يوفر تقنية موحدة عبر مجموعات مختلفة ويمنع حدوث المشكلات وحدوث العديد من الاستثناءات مثل ' الاستثناءات المتزامنة التعديل '. إلى جانب ذلك ، فإن ' مُعدل المصنف 'يمكن أن يكون مفيدًا أيضًا.