CodeGym /جاوا بلاگ /Random-SD /Java Nested Loops
John Squirrels
سطح
San Francisco

Java Nested Loops

گروپ ۾ شايع ٿيل
جاوا، اڪثر ٻين پروگرامنگ ٻولين وانگر، nested loops کي سپورٽ ڪري ٿو. هن جو مطلب آهي صرف هڪ لوپ اندر هڪ لوپ. هن آرٽيڪل ۾، اسان اهو معلوم ڪرڻ وارا آهيون ته جاوا ۾ نيسٽ ٿيل لوپس سان ڪيئن ڪم ڪجي.

Java nested loops

هڪ لوپ کي nested سڏيو ويندو آهي جيڪڏهن اهو ڪنهن ٻئي لوپ جي اندر رکيل آهي. پهرين پاس تي، ٻاهرئين لوپ اندروني لوپ کي سڏيندو آهي، جيڪو مڪمل ٿيڻ تي هلندو آهي، جنهن کان پوء ڪنٽرول ٻاهرئين لوپ جي جسم ڏانهن منتقل ڪيو ويندو آهي. ٻئي پاسن تي، ٻاهرئين لوپ اندرين کي ٻيهر سڏي ٿو. ۽ ائين ئي جيستائين ٻاهرئين لوپ ختم ٿئي. جاوا ۾ چار قسم جا لوپ آهن:
  • لوپ لاء

  • جڏهن لوپ

  • ڪريو...جڏهن لوپ

  • هر لوپ لاءِ

اهي سڀ nested loops جي حمايت. Nested-loop Constructs استعمال ٿينديون آھن جڏھن ٻن شرطن کي پورا ڪرڻ گھرجي، ھڪڙي ٻئي تي منحصر آھي. مثال طور، جيڪڏهن توهان کي ٻه-dimensional ميٽرڪس ڏيکارڻ جي ضرورت آهي، هڪ نيم پرامڊ يا هڪ ضرب ميز.

جاوا نسٽڊ لوپس ڪيئن ڪم ڪن ٿا

شايد جاوا ۾ سڀ کان وڌيڪ استعمال ٿيل لوپ لاء آهي ، وڏي حصي ۾ ڇاڪاڻ ته اهو ڪافي ورسٽائل آهي ۽ ان سان گڏ ڪوڊ پڙهڻ بلڪل آسان آهي. هتي لوپ لاء nested لاء عام نحو آهي :
// outer loop
for (initialization; condition; increment) {
  //write here your code

  //nested loop
  for(initialization; condition; increment) {
    //write here your code
  }
..
}
هو ڪيئن ڪم ڪندو آهي؟ ٻاهرئين لوپ شروع ٿئي ٿو. پوءِ لوپ لاءِ nested ڪم شروع ڪري ٿو ۽ ان جي انڊيڪس مان گذري ٿو جيستائين شرط پوري نه ٿئي، ۽ ٻيهر ڪم کي ٻاهرئين لوپ ڏانهن منتقل ڪري، ۽ ائين ٿئي ٿو جيستائين ٻاهرئين لوپ جي حالت پوري نه ٿئي. آواز ٿورڙو مشڪل آهي، ڇا اهو ناهي؟ خير، اهو هڪ خاص مثال سان سمجهڻ تمام آسان ٿيندو، تنهنڪري اچو ته ان ڏانهن وڃو.

لوپ ڪوڊ مثال لاءِ Nested

هتي هڪ کلاسي مثال آهي. اچو ته پرنٽ آئوٽ ڪريون اڌ پرامڊ کي استعمال ڪندي ٻن لاءِ لوپ. انهن مان هڪ nested آهي.
public class NestedLoopsDemo1 {

   public static void main(String[] args) {

       for (int i = 0; i < 10; i++) {
           for (int j = 0; j<=i;  j++)
               System.out.print("*");
           System.out.println();
       }

   }
}
پيداوار آهي:
******************************************************** *****

Nested while لوپ ڪوڊ مثال

public class NestedLoopsDemo2 {

   public static void main(String[] args) {

       int i = 0;
       while (i < 10) {
           int j = 0;
           while (j <= i) {
               System.out.print("*");
               j++;
           }
           System.out.println();
           i++;

       }
   }
}
پيداوار صرف ساڳيو آهي جيئن اڳئين مثال ۾:
******************************************************** *****
do ...while لوپ جڏهن لوپ سان ملندڙ جلندڙ آهي . بنيادي فرق اهو آهي ته، جسم جي do...جڏهن ته لوپ هڪ ڀيرو ايڪسپريس چيڪ ڪرڻ کان اڳ عمل ڪيو ويندو آهي.

Nested foreach loops ڪوڊ مثال

for-each loop عام طور تي لوپ لاءِ نسٽڊ ڪري سگھجي ٿو . هتي مثال آهي nested for-each loop لاءِ جيڪو 2-dimensional array ڪري ٿو.
public class NestedLoops2 {

       public static void main(String[] args)
       {
           int[][] mainArray = { {5, 4, 3, 2, 1}, {7, 8, 9, 10, 11} };

           for (int[] myArray : mainArray)
           {
               for (int i : myArray)
               {
                   System.out.print(i+" ");
               }
               System.out.println("");
           }
       }
}
پيداوار آهي:
5 4 3 2 1 7 8 9 10 11

Mixed for and while لوپ مثال

ڪڏهن ڪڏهن اسان هڪ ٻئي جي اندر مختلف قسم جا لوپ ٺاهي سگهون ٿا. مثال طور، اندر لاءِ وقت يا اندر لاءِ- هر هڪ لاءِ . بهرحال، اهو بهترين پروگرامنگ مشق ناهي. اهڙيون اڏاوتون خاص طور تي ڪوڊ جي پڙهڻ جي صلاحيت کي متاثر ڪن ٿيون. تنهن ڪري پروفيشنل پروگرامر ڪوشش ڪندا ته هڪ ٻئي سان نه ملن. خير، اھي ڪندا آھن، پر رڳو جيڪڏھن ان کي واقعي جي ضرورت آهي. ۽ هڪ وڌيڪ ننڍڙو قاعدو: جيڪڏهن توهان جي وچ ۾ چونڊجي رهيا آهيو جڏهن ۽ لاءِ ، استعمال ڪريو جتي ممڪن هجي. تنهن هوندي به، هتي اسان هڪ مثال ڏيڻ وارا آهيون هڪ استعمال ڪرڻ لاءِ لوپ اندر جڏهن . اچو ته پنهنجو نيم پرامڊ ٻيهر تعمير ڪريون.
public class NestedLoopsDemo2 {

   public static void main(String[] args) {
       int i = 0;
       while (i < 10) {
           for (int j = 0; j <= i; j++) {
               System.out.print("*");
           }
           System.out.println();
           i++;

       }
   }
}
پيداوار بغير تعجب جي آهي:
******************************************************** *****
تبصرا
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION