جافا للمبتدئين 8 - for & while loop

                                           
                                   ال loop  عموما بتمكنك انك تنفذ جمله او كذا جمله عدة مرات 
                                            وبالطريقه دي بتختصرلك في الكود بتاعك 

يعني تخيل انك محتاج انك تنفذ نفس الكود 4 مرات هيستهلك منك عدد سطور كبير واتحلت المشكله دي مع ال loop بكتب الكود اللي عايزه يتنفذ اكتر من مره بداخلها وفيه 3 طرق بنكتبها بيهم 

و الloop بتشتغل ازاي ؟! 

ال compiler بيجي عندها ويشوف هل الشرط صحيح ولا لا 
لو صحيح بينفذ الكود الخاص بيها ويرجع يتاكد من الشرط  تاني ولو صحيح هينفذ الكود تاني وهيفضل ينفذ العمليه دي الي ان يصبح الشرط غير صحيح اواذا وجد شئ يخرجه خارجها مثل break  
 اما اذا كان من الاول الشرط غير صحيح فلن ينفذ الكود
                                                                           loop flow chart
 1-while 
(الشرط اللي هنقف عنده)while
{
   الكود المراد تكراره
 }
تعتمد اعتماد كلي علي الشرط بتاعها وطالما الشرط ده صحيح هينفذ الكود واول  مالشرط يتغير بيخرج خارج الاقواس وينهيها 
وهي الاول بتشوف الشرط صحيح ولا لا وبعد كده بتنفذ الكود يعني لو الشرط مش صحيح من الاول مش هتنفذ الكود ابدا 
 هنا ال x بدأت ب 0 ودخل علي while  وجد ان x<5  فطبع اول جمله وزود ال x وهكذا الي ان تصل x=5  هيشوف الشرط هل x<5  لا هيطلع بره الاقواس ومش هينفذ الكود تاني

2-do...while 
وهي مثل while بالظبط لكن بتختلف في انها بتنفذ الكود الاول وبعدين تتحقق من الشرط 
do
}
   الكود المراد تكراره
{
;(الشرط الذي ستقف عنده الحلقة)while 
يعني سواء كان الشرط صحيح او لا الكود هيتنفذ اول مره لانها بتقول لل compiler  اعمل كذا وبعدين شوف هل الشرط صحيح او لا 
3-for loop 
  
بتختلف في اني بكون عارف انا محتاج انفذ الكود ده كام مره   مرتين او 3 او 4 .....     
 1-المتغير اللي بيتحكم في ال loop  وممكن اعرفه هنا او خارج ال for  او ممكن اكون استخدمته قبل كده في الكود المهم انه يكون متعرف في الكود 
2- الشرط اللي بيتحكم في ال loop او صحيح هينفذ الكود ولو مش صحيح مش هينفذ حاجه
3- هنا بتحكم في المتغير ازوده او انقصه علي حسب احتياجي وممكن مكتبش حاجه هنا واتحكم في المتغير داخل الloop  
بمعني ادق بيعمل تحديث لقيمه المتغير  


 عندي حاله خاصه من ال for  اسمها Enhanced for
    تعتبر طريقه مختصره للتعامل مع ال arrays 
1- هنا بعرف المتغير اللي هشتغل بيه ولازم يكون من نفس نوع ال array سواء كان  int,String,float
والمتغير ده هيفض يزيد علي حسب حجم ال array  يعني في المثال ده ال x هتبدأ من 0 الي 4 
2- هنا اسم ال array اللي انا محتاج اشتغل عليه

 عندي جملتين بيتحكمو في كود ال loop  وبحتاج استخدمهم كتيييييييييييييييييير 

1-break statement
بستخدمها في حاله اني اكون عايز اخرج بره ال loop حالا لانه مثلا نفذ حاجه معينه 
مثال اني مثلا عملت برنامج ياخد ارقام من المستخدم واول ما يجد الرقم الزوجي يخرج بره ال loop وينفذ باقي البرنامج 

هنا هينفذ ال for  ويبدأ يشوف لو الارقام تقبل القسمه علي 2 ولا لا 
لو لم تقبل القسمه هيكمل ال loop عادي اما اذا قبل القسمه هيطبع اول جمله ويخرج بره ال for  وهيكمل البرنامج عادي ويطبع الجمله الثانيه  
the even 6
welcome
 2-continue statement
 مش هيكمل باقي الكود وهيرجع للبدايه هيعمل كانه عمل حاجز بينه وبين باقي كود ال loop  اول ما هيشوف continue هينط ويرجع للاول سواء هيحدث قيمه المتغير في for  او هيرجع للشرط في while

هنا هيخش ال for ال 5 لا تقبل  القسمه علي 2 هيطبع welcome  ال6 تقبل القسمه علي 2 هيطبع the even 6  ومش هيكمل الكود لا هيرجع لجزء تحديث المتغير وهكذا وهنا هيطبع 
welcomethe even6
the even8
  
في حاله كمان اسمها infinite loop  الحلقه الغير منتهية 
وهنا بيخش ال loop  يفضل يلف جواها وميخرجش منها ابدا وبتتعمل اني اجعل الشرط دائما صحيح  والطريقه دي ممكن تحرقلك الرامات ولهذا السبب تستخدم في عمل الفيروسات  
Previous
Next Post »