مفهوم forEach في لغة جافا
الدالة forEach(), في هذا الدرس سوف نتحدث forEach كما هو في C# و PHP, تجده يأتي بكثرة في الـ C#. و هو يتميز بكفاءة عالية و سرعة و إختصار للكود اكثر من for العادية لكن طريقة كتابته في الجافا تختلف عن C# و PHP. دالة forEach() هي دالة موجودة في الإنترفيس Collection ويعني هذا أن الكلاسات المشتقة منه جميعها مثل ArrayList, LinkedList إلخ تملكها.
الدالة forEach() هي دالة تجعل المستخدم قادراً على الوصول لعناصر الكائن المشتق من الانترفيس Collection عنصراً تلو الآخر.
مثال
package foreach; public class Foreach { public static void main(String[] args) { int []a={1,100,200,13}; for(int i=0;i<a.length;i++) System.out.println(a[i]); } }
هذا المثال كان عن for العادية و سيطبع لنا الناتج بشكل حلقة كل رقم في سطر.
أمثلة في إستخدام forEach
مثال 1
إستخدام قيم عددية نوع int.
package foreach; public class Foreach { public static void main(String[] args) { int []a={1,100,200,13}; for(int i:a) System.out.println(i); } }
إستخدمنا الـ forEach, في البداية انشأنا مصفوفة عددية صحيحة نوعها int و اعطيناها اربع عناصر ثم دخلنا في حلقة لوب. و كتبنا int i:a و هذا يعني يعني قم بتخزين عناصر المصفوفة a داخل i ثم إطبعها. و هنا اختصرنا الكثير عن المثال السابق و هذه هي جودة و تقنية الـ forEach و ستكون النتيجة نفسها.
مثال 2
استخدام قيم نصية نوع String.
package foreach; public class Foreach { public static void main(String[] args) { String []a={"data","amviip","parrot","s49"}; for(String i:a) System.out.println(i); } }
في البداية انشأنا مصفوفة نصية نوعها String و اعطيناها اربع عناصر نصية ثم دخلنا في حلقة لوب و كتبنا int i:a و هذا يعني يعني قم بتخزين عناصر المصفوفة a داخل i ثم إطبعها.