خالد مرتضى نشر 12 سبتمبر 2021 أرسل تقرير نشر 12 سبتمبر 2021 ما الفرق بين إستنخدام foreach و iterator من اجل العبور عبر العناصر في جافا 1 اقتباس
1 شرف الدين حفني نشر 12 سبتمبر 2021 أرسل تقرير نشر 12 سبتمبر 2021 ال foreach هي نفسها كإستخدام الiterator ولكن بطريقة أسهل أو كما يُقال syntactic sugar حيث أن الforeach تقوم بإستخدام الiterator بشكل مخفي عن المستخدم بغرض التسهيل, فمثلاً الشفرة for (String i : list) { System.out.println(i); } أسهل من إستخدام الشفرة Iterator it=list.iterator(); while (it.hasNext()){ System.out.println(it.next()); } ولكن يجب التنويه أن إستخدام الiterator يعطيك تحكم أكبر قد تحتاجه حيث ﻻ يمكنك تنفيذ بعض الوظائف بالforeach بسبب عدم وجود تحكم كامل , فمثلاً إن أردنا حذف عنصر من المجموعة ﻻ يمكننا تحقيق ذلك بإستخدام الforeach بينما يعطينا الiterator القابلية لتحقيق ذلك الغرض for (String i : list) { list.remove(i); // سيتم إلقاء خطأ هنا } بينما بإستخدام الiterator Iterator it=list.iterator(); while (it.hasNext()){ it.remove(); // تعمل الشفرة بشكل سليم بدون إلقاء أيةِ أخطاء } اقتباس
السؤال
خالد مرتضى
ما الفرق بين إستنخدام foreach و iterator من اجل العبور عبر العناصر في جافا
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.