Java Do-While ループとユーザー入力

Zeeshan Afridi 2024年2月15日
  1. Java で do-while ループを使用する
  2. do-while ループステートメント
  3. Java の do-while ループでユーザー入力を取得
Java Do-While ループとユーザー入力

この記事では、Java での do while ループの使用について説明します。

Java で do-while ループを使用する

do-while ループは、Java の forwhile ループのような他のループに似ています。また、特定の条件に応じて、何度も繰り返すためにも使用されます。

do-while ループの特徴は、それをユニークにすることです。do-while ループは、ループの本体を少なくとも 1 回実行してから、ループの条件式を実行します。これは、true または false。条件式はブール式である必要があります。

構文:

Do {
  // body of the loop;
}
while (Condition)
  ;

コード例:

package codes;
public class Codes {
  public static void main(String[] args) {
    int count = 0;
    // Do-While loop
    do {
      System.out.println("This is the Do part of the loop"); // Body of the loop
    }
    // Conditional expression of the loop
    while (count > 1);
    System.out.println(
        "The Conditional expression is false so the Loop is terminated in the first iteration ");
  }
}

出力:

This is the Do part of the loop
The Conditional expression is false so the Loop is terminated in the first iteration

do-while ループステートメント

do-while ループの動作は非常に簡単です。do-while ループには 2つの部分があり、1つは本体部分で、もう 1つは条件付き部分です。

Do-while ループはどのように機能しますか

まず、条件式に関係なく、本体が 1 回実行され、次に条件式がそれが True であるかどうかをチェックします。ループは実行を継続します。それ以外の場合、ループは終了します。

コード例:

package codes;
public class Codes {
  public static void main(String[] args) {
    int count = 0;
    // Do-While loop
    do {
      System.out.println("Count is " + count); // Body of the loop
    }
    // Conditional expression of the loop
    while (count++ < 9);
  }
}

出力:

Count is 0
Count is 1
Count is 2
Count is 3
Count is 4
Count is 5
Count is 6
Count is 7
Count is 8
Count is 9

この例では、ループの do 部分が最初に実行され、次に条件が true になるまで条件がチェックされます。それに応じてループが繰り返されましたが、条件が false になると、ループは終了しました。

Java の do-while ループでユーザー入力を取得

すでに説明したように、do-while ループは、ループが終了する前にループの本体を実行したい場合があるため、Java プログラミング言語の望ましい機能である場合があります。メニューを表示したり、ゲームをプレイしたり、ループの do 部分でユーザーの入力を取得して、その入力をループの条件式で使用したりするのと同じです。

do-while ループでユーザーの入力を取得することは、あなたが遭遇する最も有用なケースの 1つです。

コード例:

import java.util.Scanner;
public class Main {
  public static void main(String[] args) {
    Scanner scan = new Scanner(System.in);
    String input;
    String buyAgain = null;

    do {
      System.out.println("********MENU********");
      System.out.println("Press 1 for Coke");
      System.out.println("Press 2 for Tea");
      System.out.println("Press 3 for Orange Juice");
      System.out.println("Press 4 for Coffee");

      input = scan.next();

      if (input.equals("1")) {
        System.out.println("Your Coke is ready, Please enjoy it");
      } else if (input.equals("2")) {
        System.out.println("Please take your Tea and enjoy");
      } else if (input.equals("3")) {
        System.out.println("Enjoy your Orange juice");
      } else if (input.equals("4")) {
        System.out.println("Here's your Coffe Please enjoy");
      } else {
        System.out.println("Invalid input\nPress 1 to view menu");
        buyAgain = scan.next();
      }
      System.out.println("Would you like something else\nPress 1 for yes and 0 for not now");
      buyAgain = scan.next();
    } while (!buyAgain.equals("0"));
  }
}

出力:

********MENU********
Press 1 for Coke
Press 2 for Tea
Press 3 for Orange Juice
Press 4 for Coffee
1
Your Coke is ready, Please enjoy it
Would you like something else
Press 1 for yes and 0 for not now
1
********MENU********
Press 1 for Coke
Press 2 for Tea
Press 3 for Orange Juice
Press 4 for Coffee
0
Invalid input
Press 1 to view menu
1
Would you like something else
Press 1 for yes and 0 for not now
0

このコードでは、do 部分を使用してメニューを表示し、ユーザーから入力を受け取りますが、条件付き部分はユーザー入力に依存します。

著者: Zeeshan Afridi
Zeeshan Afridi avatar Zeeshan Afridi avatar

Zeeshan is a detail oriented software engineer that helps companies and individuals make their lives and easier with software solutions.

LinkedIn

関連記事 - Java Loop