Javaのwhile文で無限ループを実装する方法を現役エンジニアが解説【初心者向け】
初心者向けにJavaのwhile文で無限ループを実装する方法について解説しています。最初に繰り返し処理のひとつwhile文の基本を説明します。次に無限ループの発生する条件と実装の例をサンプルコードで見ていきましょう。
テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日 調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名 調査手法:インターネット調査
Javaのwhile文で無限ループを実装する方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。
Javaについてそもそもよく分からないという方は、Javaとは何なのか解説した記事を読むとさらに理解が深まります。
なお本記事は、TechAcademyのオンラインブートキャンプ、Java講座の内容をもとに作成しています。
今回は、Javaに関する内容だね!
どういう内容でしょうか?
while文で無限ループを実装する方法について詳しく説明していくね!
お願いします!
目次
while文とは
まずは、while文について簡単に説明していきます。
whie文はプログラミングの学習を始めると必ず最初の段階でててくる基本的な考え方である「繰り返し処理」を実装するための構文です。
具体的には、
while(条件式){ 繰り返したい処理 }
と記述することで、条件式がtrueである限り、指定した処理をずっと行ない続けます。
例えば、1~10を順番に表示したい場合は、
int i = 0; while(i < 10){ i = i + 1; System.out.println(i); }
とすることで、整数型の変数であるiが10以上になるまで、1から順番に整数を表示することができます。このように、while文を使うことで繰り返し同じ処理を行なう場合に、コードをシンプルに記述することが可能になります。
関連記事:分かりやすく解説!Javaでwhile文を使う方法【初心者向け】
無限ループを実装する方法
while文の使い方がわかっていれば、無限ループを実装することはかんたんです。条件式の部分が常にtrueになるように、
while(true){ 繰り返したい処理 }
としておけば、繰り返し処理をずっと行なってくれるプログラムを作ることができます。
実際に書いてみよう
それでは実際に無限ループを実装してみましょう。今回作るプログラムは、1秒毎に整数を表示するプログラムです。
class WhileLoopSample{ public static void main(String args[]){ int i = 0; while(true){ //数値を表示 System.out.println(i); i = i + 1; try{ //1秒間待つ(try-catch構文で例外処理を行う必要がある。) Thread.sleep(1000); }catch(InterruptedException e){ e.printStackTrace(); } } } }
(Thread.slepp()を使う部分で、try-catch構文というものを使っていますが、よくわからない方は気にしなくて大丈夫です。)
これを実行すると、
0 1 2 3 4 5 6 ... ... ...
のように1秒毎にどんどん数字が表示されていく様子が確認できます。
無限ループのプログラムは何もしないとずっと表示されていくので、確認できたら「Ctrlキー」と「 c」を同時に押すことで でプログラムを停止しましょう。
まとめ
この記事では、Javaにおけるwhile文を使った無限ループの実装方法について解説しました。
無限ループのプログラムは、定期的に実行するような処理(例えば、1時間ごとに天気を表示するプログラム、など)で使われることがあります。
必要に応じて参考にしてみてください。
監修してくれたメンター
メンターOS
AIプログラミングを使って開発を行う。プログラミング歴は約3年。Pythonは割と好きな方。JavaもAndroid開発で触れていたりする。 大学では物理学を勉強中。好きな物理理論は一般相対性理論らしい。 意外と動物が好きだったり、、、。 |
内容分かりやすくて良かったです!
ゆかりちゃんも分からないことがあったら質問してね!
分かりました。ありがとうございます!
TechAcademyでは、初心者でも、JavaやServletの技術を使ってWebアプリケーション開発を習得できる、オンラインブートキャンプを開催しています。
また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。