はじめに
インフラの分野でも、Iac化が進んで行くと考えています。そこで、ノウハウが体系だっているものが学び易いと考えて、Javaを学びはじめました。
今回は、ループ処理にフォーカスしました。
内側のループが終了するたびに外側のループが再度実行され、A
が2回表示される動作を確認する。
外側のループ: 配列 array の各要素を順に a に代入します。
内側のループ: 配列 array の各要素を順に b に代入し、b が "B" でなければ b を出力します。b が "B" になると、break で内側のループを終了します。
public class Main {
public static void main(String[] args) {
String[] array = {"A", "B"};
// "A A" を表示するためのループ
for (String a : array) { // 外側のループ
for (String b : array) { // 内側のループ
if ("B".equals(b))
break; // "B" を見つけたら内側のループを終了
System.out.print(b + " "); // "A" を表示
}
}
}
}
実行結果:
A A
-
外側のループ (
for (String a : array)
) はarray
の中身{"A", "B"}
を順に取り出します。 - 内側のループ (
for (String b : array)
) はarray
の中身を再度順に取り出します。 -
最初のループ (
a = "A"
):- 内側のループが
"A"
を取り出してSystem.out.print(b + " ")
を実行し、"A "
を出力。 - 次に内側のループが
"B"
を取り出すので、if ("B".equals(b))
がtrue
となり、break
で内側のループが終了します。
- 内側のループが
-
2回目のループ (
a = "B"
):- 再度内側のループが実行されますが、
b = "A"
が再度取り出され、同じくSystem.out.print(b + " ")
が実行されて"A "
が再び表示されます。
- 再度内側のループが実行されますが、
結果として、A
が2回表示されるのは、外側のループが1回目(a = "A"
)と2回目(a = "B"
)の両方で内側のループを走らせるからです。そのため、A A
が表示されます。
仲間を募集しています!
ARIではエンジニア・ITコンサルタント・PM職全方位で仲間を募集しております。
カジュアル面談、随時受付中です!
ご興味ある方はこちらをご覧ください。