簡體   English   中英

如何使菜單重新出現在Java中

[英]How to make a menu re-appear in java

import java.util.*;
public class LabTest1
{
public static void main(String[] args) 
    {
        Scanner console = new Scanner(System.in);
        double Choice1;
        double Choice2;
        int MenuChoice;
        System.out.print("Please enter the length: ");
        Choice1 = console.nextDouble();

        System.out.print("Please enter the width: ");
        Choice2 = console.nextDouble();

        System.out.println("=============================");
        System.out.println("|   MENU SELECTION          |");
        System.out.println("=============================");
        System.out.println("| Options:                  |");
        System.out.println("| 1. Calculate the area     |");
        System.out.println("| 2. Calculate the perimeter|");
        System.out.println("| 3. Exit                   |");
        System.out.println("=============================");
        MenuChoice = console.nextInt();
        System.out.print(" Select option: ");

    switch (MenuChoice)
    {
    case 1:
        System.out.println("Calculate the area selected");   
        System.out.println(Choice1 * Choice2);
        break;
    case 2:
      System.out.println(" Calculate the perimeter selected");  
      System.out.println(2*(Choice1 + Choice2));
      break;
    case 3:
        System.out.println("Exit selected");
        System.out.println(Choice1 + Choice2);
        break;

    default:
        System.out.println("Invalid selection");
        break; 
    }

    }
}

我需要這樣做,如果值相等,它應該顯示一條消息,說值代表一個正方形,並允許用戶重新輸入這些值,直到輸入了適當的vlaues(是的,我知道一個正方形是一個矩形)

使用以下模式來請求輸入,拒絕無效輸入並循環:

boolean isValidInput = false;
[print prompt for input]
while (!isValidInput) {
   input = ...
   if (input is not valid) {
       print [invalid input, what is right form]
   } else {
       isValidInput = true;
   }
 }

順便說一句,您應該使用最少的文字。 打印請求和您一次執行的操作,並在每次輸入錯誤信息時提示輸入錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM