CodeGym /جاوا بلاگ /Random-UR /جاوا میں ہر ایک لوپ کے لیے
John Squirrels
سطح
San Francisco

جاوا میں ہر ایک لوپ کے لیے

گروپ میں شائع ہوا۔

ہر ایک کے لیے لوپ کیا ہے؟

ہر ایک کے لیے ایک قسم کا لوپ ہے جسے آپ اس وقت استعمال کرتے ہیں جب آپ کو کسی صف یا مجموعہ کے تمام عناصر پر کارروائی کرنے کی ضرورت ہوتی ہے۔ اس نے کہا، ہر ایک کے لیے جملہ دراصل اس لوپ میں استعمال نہیں ہوتا ہے۔ اس کی ترکیب کچھ یوں ہے:
for (type itVar : array)
{
    // Operations
}
جہاں ٹائپ ایٹریٹر متغیر کی قسم ہے (جو سرنی میں عناصر کے ڈیٹا ٹائپ سے میل کھاتا ہے!)، itVar اس کا نام ہے، اور سرنی ایک صف ہے (دیگر ڈیٹا ڈھانچے کی بھی اجازت ہے، مثال کے طور پر، کچھ قسم کے مجموعہ، جیسے ArrayList ) یعنی وہ آبجیکٹ جس پر لوپ کو عمل میں لایا جاتا ہے۔ جیسا کہ آپ دیکھ سکتے ہیں، یہ تعمیر کاؤنٹر کا استعمال نہیں کرتی ہے: تکرار کرنے والا متغیر صرف صف یا مجموعہ کے عناصر پر تکرار کرتا ہے۔ جب اس طرح کے لوپ کو عمل میں لایا جاتا ہے، تو تکرار کرنے والے متغیر کو ترتیب وار صف یا مجموعہ کے ہر عنصر کی قدر تفویض کی جاتی ہے، جس کے بعد بیانات (یا بیان) کے مخصوص بلاک کو عمل میں لایا جاتا ہے۔

for-each لوپ کے علاوہ، Java میں forEach() طریقہ بھی ہے۔ آپ اس کے بارے میں مضمون میں پڑھ سکتے ہیں جس کا عنوان ہے "لوپس لکھنا بند کرو!" جاوا 8 میں مجموعوں کے ساتھ کام کرنے کے لیے سرفہرست 10 بہترین طریقے

نوٹ:ہر ایک کے لیے ایک لوپ کو arrays اور کسی بھی کلاسز پر لاگو کیا جا سکتا ہے جو java.lang.Iterable انٹرفیس کو نافذ کرتی ہے۔ لوپ کے لیے درج ذیل کوڈ کے برابر ہوگا:
for (int i=0; i < array.length; i++)
{

    // Statements
}

ہر ایک کے لیے لوپ کی مثال

ہم طلباء کے اسکور کی ایک صف بناتے ہیں۔ پھر ہم تمام تخمینوں کو پرنٹ کرنے، اوسط سکور کا حساب لگانے اور ٹاپ سکور تلاش کرنے کے لیے ہر ایک کے لیے ایک لوپ کا استعمال کرتے ہیں۔
public class ForEachTest {

// A method that prints all scores
public static void printAllScores(int[] scores) {
        System.out.print("|");
        for (int num : scores) {

            System.out.print(num + "|");
        }
        System.out.println();
    }

// A method that displays the average score

public static double getAverageScore(int[] numbers) {
        int totalScore = 0;

        for (int num : numbers) {
            totalScore = num + totalScore;
        }
        return ((double) totalScore / numbers.length);

    }
// A method that determines the best (maximum) score
    public static int getBestScore(int[] numbers) {
        int maxScore = numbers[0];

        for (int num : numbers) {
            if (num > maxScore) {
                maxScore = num;
            }
        }
        return maxScore;
    }

public static void main(String[] args) {

// Array of scores
int[] scores = {5, 10, 7, 8, 9, 9, 10, 12};


  int bestScore = getBestScore(scores);
        System.out.print("All the scores: ");
        printAllScores(scores);
        System.out.println("The highest score is " + bestScore);
        System.out.println("The average score is " + getAverageScore(scores));
    }

}
پروگرام آؤٹ پٹ:
All the scores: |5|10|7|8|9|9|10|12|
The highest score is 12
The average score is 8.75
اب، آئیے دیکھتے ہیں کہ تمام سکور پرنٹ کرنے کا طریقہ کیسا نظر آئے گا اگر ہم لوپ کے لیے ایک عام استعمال کریں:
public static void printAllScores(int[] scores) {
        System.out.print("|");
        for (int i = 0; i < scores.length; i++) {

            System.out.print(scores[i] + "|");
        }
        System.out.println();
    }
اگر ہم اس طریقہ کو مرکزی طریقہ سے کہتے ہیں، تو ہمیں یہ نتیجہ ملتا ہے:
All the scores: |5|10|7|8|9|9|10|12|

مجموعوں کے ساتھ ہر ایک کے لیے لوپ کی مثال

ہم ناموں کا مجموعہ بناتے ہیں اور تمام نام اسکرین پر دکھاتے ہیں۔
List<String> names = new ArrayList<>();
        names.add("Snoopy");
        names.add("Charlie");
        names.add("Linus");
        names.add("Shroeder");
        names.add("Woodstock");

        for(String name : names){
            System.out.println(name);
        }

ہر ایک کے لیے لوپ کی حدود

فار -ایچ لوپ کی کمپیکٹ شکل کو لوپ کے لیے پڑھنے کے لیے آسان سمجھا جاتا ہے ، اور جہاں بھی ممکن ہو ہر ایک کے لیے لوپ کا استعمال کرنا بہترین عمل سمجھا جاتا ہے۔ تاہم، ہر ایک کے لیے لوپ عام کے لیے لوپ کے مقابلے میں کم عالمگیر تعمیر ہے ۔ یہاں کچھ آسان معاملات ہیں جہاں ہر ایک کے لیے ایک لوپ یا تو بالکل کام نہیں کرے گا یا کام کرے گا، لیکن صرف مشکل کے ساتھ۔
  1. اگر آپ اختتام سے شروع تک ایک لوپ کے ذریعے چلانا چاہتے ہیں۔ یعنی، ہر ایک کے لیے کوئی لوپ نہیں ہے جو درج ذیل کوڈ کا براہ راست ینالاگ ہو:

    for (int i= array.length-1; i>0; i--)
    {
          System.out.println(array[i]);
    }
  2. اگر آپ کسی صف میں تبدیلیاں کرنا چاہتے ہیں تو for-each موزوں نہیں ہے۔ مثال کے طور پر، آپ کسی صف کو اس کے عناصر کے مقام کو تبدیل کیے بغیر ترتیب نہیں دے سکتے۔ مزید برآں، درج ذیل کوڈ میں، صرف تکرار کرنے والا متغیر بدلے گا، صف کا عنصر نہیں:

    for (int itVar : array)
    {
        itVar = itVar++;
    }
  3. اگر آپ کسی صف میں کسی عنصر کی تلاش کر رہے ہیں اور آپ کو جس عنصر کی آپ تلاش کر رہے ہیں اس کی انڈیکس کو واپس کرنے (یا آگے بڑھنے) کی ضرورت ہے، تو بہتر ہے کہ عام کے لیے لوپ کا استعمال کریں ۔

ہر ایک لوپ کے بارے میں ایک مددگار ویڈیو

کوڈ جیم کورس میں لوپس

CodeGym پر، ہم Java Syntax quest کے لیول 4 پر لوپس استعمال کرنے کی مشق شروع کرتے ہیں ۔ اس سطح کے کئی اسباق کے ساتھ ساتھ مختلف سطحوں کے بہت سے کام، ان کے ساتھ کام کرنے میں آپ کی صلاحیتوں کو تقویت دینے کے لیے لوپس کے لیے وقف ہیں۔ بنیادی طور پر، کوئی راستہ نہیں ہے کہ آپ ان سے بچ سکیں — لوپس پروگرامنگ میں سب سے اہم تعمیرات میں سے ایک ہیں۔

ہر ایک اور دوسرے لوپس کے بارے میں مزید معلومات

  1. جبکہ بیان ۔ مضمون سب سے آسان قسم کے لوپ کے بارے میں ہے: whileلوپ، جسے CodeGym طالب علموں کو لوپس متعارف کرانے کے لیے استعمال کرتا ہے۔
  2. لوپس لکھنا بند کرو! جاوا 8 میں کلیکشن کے ساتھ کام کرنے کے لیے سرفہرست 10 بہترین طریقے ۔ یہ مضمون CodeGym طلباء کی مدد کرے گا جو کم از کم کورس کے آدھے راستے پر ہیں مجموعہ کے ساتھ کام کرنے کے بارے میں بہت سی دلچسپ چیزیں سیکھیں۔
تبصرے
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION