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ループは終了します。
//プログラムは一文を10回印刷します。 class Loop { public static void main(String[] args) { for (int i = 1; i <= 10; ++i) { System.out.println("Line " + i); } } }
出力:
Line 1 Line 2 Line 3 Line 4 Line 5 Line 6 Line 7 Line 8 Line 9 Line 10
上記の例では、
初期化式:int i = 1
テスト式:i <= 10
更新式:++ i
ここでは、iの最初の値は1。したがって、テスト式が最初にtrueと評価されます。したがって、プリント文を実行します。次に、更新式を評価します。
更新式を評価するたびに、iの値が増加1まで続行します。そして、テスト式を再び評価します。そして、同じプロセスを繰り返します。
このプロセスはiが11。11がfalseの時、テスト式(i <= 10)がfalseになるまで、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の値が増加1
ループは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
ループを使用する際には、常に注意深くすることが重要です。なぜなら、テスト式を常にfalseでないように設定しないと、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では、forループの別の文法を使用することができますJava 配列およびJava 集合(これをループバージョンと呼びます)。例えば、
for (int a : array) { System.out.println(a); }
さらに詳しい情報については、以下のサイトにアクセスしてください:Java 遍历ループ