English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
在本教程中,我们将借助示例学习如何在Java中使用for循环,并且还将学习for循环在计算机编程中的工作方式。
在计算机编程中,循环用于重复特定的代码块,直到满足特定条件(测试表达式为false)为止。例如,
想象一下,我们需要在屏幕上打印一个句子50次。好吧,我们可以通过使用print语句50次(不使用循环)来做到这一点。您需要打印一百万次句子怎么样?这时您需要使用循环。使用循环,我们可以只编写一次print语句,然后运行任意次数。
这只是一个简单的示例,显示了循环在计算机编程中的重要性。
Java 中for循环的语法是:
for (initialization; testExpression; update) { // 循环体内的代码 {}
初始化(initialization)表达式只执行一次。
然后,评估测试表达式(testExpression)。在这里,测试表达式(testExpression)是一个布尔表达式。
如果测试表达式(testExpression)的计算结果为true,则执行for循环体内的代码。
然后执行更新表达式(update)。
再次,评估测试表达式(initialization)。
如果测试表达式为true,则执行for循环体内的代码,并继续执行更新表达式(update)。
这个过程一直进行到测试表达式(testExpression)被评估为false时为止。
如果测试表达式(testExpression)的计算结果为false,则for循环终止。
//程序打印一个句子十次 class Loop { public static void main(String[] args) { for (int i = 1; i <= 10; ++i) { System.out.println("Line " + i); {} {} {}
الإخراج:
السطر 1 السطر 2 السطر 3 السطر 4 السطر 5 السطر 6 السطر 7 السطر 8 السطر 9 السطر 10
في المثال السابق لدينا
تعبير التأسيس: int i = 1
تعبير التحقق: i <= 10
تعبير التحديث: ++i
في هذا السياق، تكون القيمة الاولية لـ i هي 1. لذلك، يكون تقييم تعبير التحقق في المرة الأولى هو صحيح. لذا، سيتم تنفيذ جملة الطباعة. الآن سيتم تقييم تعبير التحديث.
في كل مرة يتم فيها تقييم تعبير التحديث، يتم زيادة قيمة i. مرة أخرى، يتم تقييم تعبير التحقق. ويتم تكرار نفس العملية.
يستمر هذا العمل حتى أن يكون i هو 11. عند أن يكون i هو 11، يكون تعبير التحقق (i <= 10) هو خطأ، وتتوقف دالة for.
للحصول على معلومات إضافية حول تعبير التحقق وكيفية تقييمه، يرجى زيارةعمليات العلاقاتوعمليات منطقية.
// يبحث البرنامج عن مجموع الأعداد الطبيعية من 1 إلى 1000. class Number { public static void main(String[] args) { int sum = 0; for (int i = 1; i <= 1000; ++i) { sum += i; // يساوي sum = sum + i {} System.out.println("Sum = " + sum); {} {}
الإخراج:
Sum = 500500
في هذا السياق، لدينا معلمة تُدعى sum. قيمتها الافتراضية هي 0. داخل دالة for، قمنا بتحديد قيمة معلمة تُدعى i هي 1.
في كل تكرار من دالة for،
تخصيص قيمة للمعلمة sum: sum + i
زيادة قيمة i
يستمر الدوران حتى أن قيمة i تكون أكبر من 1000. للحصول على تأثير مرئي أفضل،
1 تكرار: i = 1 و sum = 0 + 1 = 1 2 تكرار: i = 2 و sum = 1 + 2 = 3 3 تكرار: i = 3 و sum = 3 + 3 = 6 4 تكرار: i = 4 و sum = 6 + 4 = 10 ... .. ... 999 تكرار: i = 999 و sum = 498501 + 999 = 499500 1000 تكرار: i = 1000 و sum = 499500 + 1000 = 500500
عند استخدام الدوال المتكررة، يجب أن نكون دقيقين دائمًا. لأنه إذا قمنا بضبط تعبير التحقق بشكل خاطئ ليكون دائمًا غير صحيح، فإن دالة for ستعمل إلى الأبد.
هذا يُدعى حلقة لا نهائية. على سبيل المثال،
// حلقة لا نهائية class Infinite { public static void main(String[] args) { int sum = 0; for (int i = 1; i <= 10; --i) { System.out.println("Hello"); {} {} {}
في هذا، لم يكن التعبير الاختباري (i <= 10) يظهر كـ false، وسيتم طباعة hello مرارًا وتكرارًا (على الأقل نظريًا).
for (; ; ) { {}
في Java، يمكن استخدام لغة синтactic أخرى لـ for loopقوائم Javaومجموعات Javaالمعروف باسم حلقة الترحيل. على سبيل المثال،
for (int a : array) { System.out.println(a); {}
للإطلاع على معلومات أكثر، يرجى زيارة:Java Loops Traversal