Java言語入門 〜C言語を学んだ君へ〜
[第5回]練習問題第3問解答
第3問解答
第3問解説
かなり紛らわしい問題ですが、解けたでしょうか。
C言語の知識のままやってしまうと解くことができません。
boolean型でwhileループを行う
while文の無限ループを行うためにboolean型を使いました。
boolean型の値はtrueかfalseの2種類の値が格納できます。
whileの条件式がtrueの時、falseになるまで無限ループします。
そこで、4行目のプログラムを以下のように記述することになります。
boolean i = true;
これで while(true){...}となるのでループが継続されます。
また、このwhileループを止めるときはtrueをfalseに変えます。よって、12行目で
i = false;
と記述し、5回ループした時にiの値をfalseに変えてループを抜けます。
int型等では、ループはできない
C言語ではwhileループを指定した時に
while(1){...}
と行いましたが、Javaではすることができません。
この問題はわざと間違いやすいように4行目、12行目を隠して問題を解かせました。