所以我试图创建这个简单的程序是用户在一个月内进入(1-12)然后使用switch语句告诉他们基于他们输入的内容是什么月份.这是我的代码:
import java.util.Scanner;
class tests{
public static void main(String args[]){
Scanner monthone = new Scanner(System.in);
Double month;
System.out.println("What is the numerical value of the month? 1-12");
System.out.print(monthone.nextLine());
month = monthone.nextDouble();
switch (month){
case 1:
System.out.println("It's January");
break;
case 2: System.out.println("It's Feburary");
break;
case 3:
System.out.println("It's March");
break;
case 4:
System.out.println("It's April");
break;
case 5:
System.out.println("It's May");
break;
case 6:
System.out.println("It's June");
break;
case 7:
System.out.println("It's July");
break;
case 8:
System.out.println("It's August");
break;
case 9:
System.out.println("It's September");
break;
case 10:
System.out.println("It's October");
break;
case 11:
System.out.println("It's November");
break;
case 12:
System.out.println("It's December");
break;
default:
System.out.println("I Don't know what month it is..");
break;
}
}
}
Run Code Online (Sandbox Code Playgroud)
任何人都可以提供解决方案或帮助吗?我尝试使用Int作为我的变量但是失败了...:s(请详细解答..我在这里学习不会在快速回复中给出答案.)
您已将月份定义为Double.
Double month;
Run Code Online (Sandbox Code Playgroud)
但是,您只能打开以下类型:
因此,
switch (month) {
Run Code Online (Sandbox Code Playgroud)
在语法上是不正确的,将导致编译错误.
其他一些事情是不对的:

这是修改后的代码:
public static void main(String args []){
Scanner monthone = new Scanner(System.in);
int month;
System.out.println("What is the numerical value of the month? 1-12");
//System.out.print(monthone.nextLine());
month = monthone.nextInt();
switch (month){
case 1:
System.out.println("It's January");
break;
case 2: System.out.println("It's Feburary");
break;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
65 次 |
| 最近记录: |