创建基本菜单时,为什么可以';我没弄好吗-JAVA
我正在介绍Java类,直到现在我还没有遇到任何问题。我不知道我是否只是一个傻瓜,答案很简单,但事情就是这样 我需要创建一个简单的菜单。我提示用户,然后他们输入一个整数来选择一个选项。但也需要有一个选项来输入“X”并退出程序创建基本菜单时,为什么可以';我没弄好吗-JAVA,java,menu,Java,Menu,我正在介绍Java类,直到现在我还没有遇到任何问题。我不知道我是否只是一个傻瓜,答案很简单,但事情就是这样 我需要创建一个简单的菜单。我提示用户,然后他们输入一个整数来选择一个选项。但也需要有一个选项来输入“X”并退出程序 Scanner in = new Scanner(System.in); System.out.println("Welcome to the Math Study Guide!"); System.out.println("Which arithmetic
Scanner in = new Scanner(System.in);
System.out.println("Welcome to the Math Study Guide!");
System.out.println("Which arithmetic table would you like to use?");
System.out.println("1) Addition");
System.out.println("2) Subtraction");
System.out.println("3) Multiplication");
System.out.println("4) Division");
System.out.println("X) Exit the program");
int input = in.nextInt();
if (input <= 5 )
{if (input == 1){System.out.println("Addition");}
{if (input == 2){System.out.println("Subtraction");}
{if (input == 3){System.out.println("Multiplication");}
{if (input == 4){System.out.println("Division");}
else {System.out.println("You have exited");}
Scanner-in=新的扫描仪(System.in);
System.out.println(“欢迎来到数学学习指南!”);
System.out.println(“您希望使用哪个算术表?”);
系统输出打印项(“1)添加项”);
System.out.println(“2)减法”);
System.out.println(“3)乘法”);
系统输出打印(“4)分部”);
System.out.println(“X)退出程序”);
int input=in.nextInt();
如果(input如某些注释中所述,您的问题是数据类型。如果有人在程序中输入“X”,则应为整数值,而不是
要使程序正常工作,需要将数据类型从int改为String
String input = in.next();
这将为您获取输入
现在做一个switch/case,而不是if语句
switch (input) {
case "1" : System.out.println("Addition");
break;
case "2" : System.out.println("Subtraction");
break;
deafult: System.out.println("You have exited the program");
break;
}
如果您不熟悉switch/case语句:case“1”检查输入是否等于“1”。如果为true,它将打印“加法”,然后重要的是进行中断;否则它将继续检查输入是否等于“2”,依此类推。
如果没有其他匹配项,则默认分支将被激活。因此,如果您的输入为例如“r”,则您的程序也将写入“You have exited the program”(您已退出该程序)。如果您不想这样做,只需添加另一个大小写“x”写你的东西。是的。你不需要使用nextInt
,而是需要一个char
并转换成int
。你已经有了它。你知道它在nextInt
中阻塞了X
。你可以只使用next()
方法,该方法返回一个字符串,然后将输入与“1”、“2”等进行比较。还建议使用开关
大小写而不是if语句。@ShawnMehan我不太清楚将其转换为int是什么意思,你能详细说明一下吗?@Siddhartha我已经尝试过了,但它一直告诉我next()这不是我能做的有效的事情。@Brandon我刚试过,它对我有效:String input=in.next();