使用if语句验证switch语句

  • 使用switch语句实现菜单。允许用户输入正确的大写/小写字母(即AIR或air或Air或aiR等)。如果用户输入了无效的选择,则您的程序应告诉他们,然后退出。
  • 空气,水和钢的答案必须使用printf。将空气显示为3个小数位,将水显示为4个小数位,将钢显示为5个小数位。
  • 在用户输入距离之后,声波必须传播,但是在计算中使用该数字之前,请对其进行验证。如果距离小于零或大于10000,则显示错误消息,并且不做进一步处理,即退出。将switch语句(菜单–参见上文)嵌套在此if语句中。
import java.util.Scanner;

   public class SpeedSound
   {
     public static void main(String[] args)
     {
        String input;       
        double distance;
        double time;
        final double AIR   = 1/1100;
        final double WATER = 1/4900;
        final double STEEL = 1/16400;

        Scanner kyb = new Scanner(System.in);

        System.out.print("Enter the corresponding medium:\n ");
        System.out.println("Air\n ");
        System.out.println("Water\n ");
        System.out.println("Steel\n ");
        input = kyb.nextLine();

        System.out.print("Enter the distance: ");   
        distance = kyb.nextDouble();

       if (distance < 0 || distance > 10000)
             System.out.print("Error: ");

           switch (input)
            {
                case "Air":
                case "AIR":
                time = (distance / 1100);
           System.out.println("The total time traveled is " + time + "seconds.");
        break;

        case "Water":
        case "WATER":   
        time = (distance / 4900);
        System.out.println("The total time traveled is " + time + "seconds.");
        break;

        case "Steel":
        case "STEEL":
        time = (distance / 16400);
        System.out.println("The total time traveled is " + time + "seconds.");
        break;

        }
     }
   }
青年霍比特人

允许用户输入正确的大写/小写字母(即AIR或air或Air或aiR等)

因为您需要处理lower/upper输入的所有大小写版本。只需在将字符串转换为lower case之前将其转换switch case,然后仅在其中定义小写case语句,而不要定义多个语句。

intput = input.toLowerCase();   // this is not require if you have converted it earlier
switch (input) {
case "air":

如果用户输入了无效的选择,则您的程序应告诉他们,然后退出。

您可以使用if condition和退出用户:

input = kyb.nextLine().toLowerCase();

if (! (input.equals("air") || input.equals("water") || input.equals("steel")) ) {
  System.out.println("Invalid input. Exit");
  return;
}

如果距离小于零或大于10000,则显示错误消息,并且不做进一步处理,即退出。

   if (distance < 0 || distance > 10000) {
         System.out.print("Error: ");
         return;
   }

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章