我是编码世界的初学者。我最近在遇到一个speedbump时一直在学习Java。
首先是代码:
import java.util.*;
public class Stuff {
public static void main(String []args); {
Scanner identity = new Scanner(System.in);
String id;
System.out.println("Please Enter Your Name :");
id = identity.next();
Switch (id); {
case "name1":
//some code here....
break;
case "name2":
//some code here....
break;
case "name3":
//some code here....
break;
case "name4":
//some code here....
break;
default :
//some code here....
break;
}
}
}
错误
Error: Orphaned case
case: "name1";
我似乎无法找到为什么会发生这种情况并且谷歌无济于事。
编辑:有些人说我用半冒号结束了Switch。但是当我添加它时,我得到一个新错误以及前一个错误:
Error: ';' expected
Switch (id) {
^
答案 0 :(得分:3)
你遇到了多个问题。
问题1:
Switch (id); {
----------^
仔细查看您的;
会立即结束switch
。
显然你所有的case
陈述都成了孤儿:)
问题2:
您的Switch
应为switch
(小写 s )
问题3:
另外一个;
导致您在
public static void main(String []args); {
-----^
注意:我强烈建议您使用IDE,以节省大量时间。它会立即告诉您编译器错误。
答案 1 :(得分:2)
您的switch语句的语法错误。
switch (id) {
case "name1":
//some code here....
break;
case "name2":
//some code here....
break;
case "name3":
//some code here....
break;
case "name4":
//some code here....
break;
default :
//some code here....
break;
}
答案 2 :(得分:2)
您尝试的内容需要最新版本的Java,因为String
与switch
一起使用。
你必须
switch (id)
请删除;
答案 3 :(得分:1)
Switch (id);
语句后的分号有效地终止了switch案例,之后定义的案例是孤立的(即没有任何switch案例)
答案 4 :(得分:1)
您正在尽早完成切换声明:
Switch (id); {
真正的语法是:
switch (id) {
// your cases
}