如何在Java中的Switch语句中使用字符串
当我运行代码时,我的输入字符串不会出现。首先,当我把它放在我的主方法中时,它说它不可用。在我把它从我的主方法中取出并放到公共类中之后,无法使用的问题就消失了。但在运行代码时它仍然不会出现如何在Java中的Switch语句中使用字符串,java,string,switch-statement,Java,String,Switch Statement,当我运行代码时,我的输入字符串不会出现。首先,当我把它放在我的主方法中时,它说它不可用。在我把它从我的主方法中取出并放到公共类中之后,无法使用的问题就消失了。但在运行代码时它仍然不会出现 public class Number0to9 { public static String input; public static void main(String[] args) { tryagain: while (true) { System.ou
public class Number0to9 {
public static String input;
public static void main(String[] args) {
tryagain: while (true) {
System.out.print("Type a number between 0 and 9 : ");
Scanner scan = new Scanner(System.in);
int x = scan.nextInt();
int output = x;
input = "You entered number: ";
switch (x) {
case 0:
input += output;
break tryagain;
case 1:
input += output;
break tryagain;
case 2:
input += output;
break tryagain;
case 3:
input += output;
break tryagain;
case 4:
input += output;
break tryagain;
case 5:
input += output;
break tryagain;
case 6:
input += output;
break tryagain;
case 7:
input += output;
break tryagain;
case 8:
input += output;
break tryagain;
case 9:
input += output;
break tryagain;
default:
System.out.println("Your number was bigger than 9");
break;
}
}
}
}
应该是这样的吗
public static void main(String[] args) {
boolean digitEntered = false;
String input = "You enetred number : ";
while (digitEntered == false) {
System.out.print("Type a number between 0 and 9 : ");
Scanner scan = new Scanner(System.in);
int x = scan.nextInt();
if (x >= 0 && x <= 9) {
digitEntered = true;
input += x;
} else {
System.out.println("Your number was bigger than 9 ");
}
}
System.out.println(input);
}
publicstaticvoidmain(字符串[]args){
布尔数字中心=假;
String input=“您输入的数字:”;
while(数字居中==false){
System.out.print(“键入一个介于0和9之间的数字:”);
扫描仪扫描=新扫描仪(System.in);
int x=scan.nextInt();
如果(x>=0&&xJava break语句终止带标签的循环。并且字符串输入
中包含值。请尝试在while循环之后访问它
public class Number0to9 {
public static String input;
public static void main(String[] args) {
tryagain : while (true) {
System.out.print("Type a number between 0 and 9 : ");
Scanner scan = new Scanner(System.in);
int x = scan.nextInt();
int output = x;
input = "You enetred number : ";
switch (x) {
case 0:
input += output;
break tryagain;
case 1:
input += output;
break tryagain;
case 2:
input += output;
break tryagain;
case 3:
input += output;
break tryagain;
case 4:
input += output;
break tryagain;
case 5:
input += output;
break tryagain;
case 6:
input += output;
break tryagain;
case 7:
input += output;
break tryagain;
case 8:
input += output;
break tryagain;
case 9:
input += output;
break tryagain;
default:
System.out.println("Your number was bigger than 9 ");
break;
}
}
System.out.println(input);
}
}
只有当两个变量都是int(或任何其他算术变量类型)时,上述代码语句才可用于添加输入和输出
若要连接输入和输出,首先,输出应转换为字符串
input = input + Integer.toString(output);
在每种情况下都进行此更改。效果很好,但是没有办法使其与Switch语句一起工作吗?您可以执行Switch语句,感觉这样做是代码复制。好的,我发现了我做错了什么。我没有在末尾的while循环外打印我的字符串。非常不清楚您在问什么-如果您需要查看在输出中,您最好打印它…请查看帖子中的指南和代码,以清楚地说明问题(即,开关
不太可能与您的问题相关,尽管在标题和大量代码中提到了它)
input = input + Integer.toString(output);