import java.util.*;
public class Demo04 {
public static void main(String args[])
{
Scanner input=new Scanner(System.in);
System.out.println("今天星期几");
String day=input.next();
switch(day)
{
case"星期一"
System.out.println("今天吃青菜");
break;
case"星期二"
System.out.println("今天吃牛肉");
break;
default;
}

}}
有几处地方包错``不知道怎么回事`

解决方案 »

  1.   

    import java.util.*;
    public class Demo04 {
    public static void main(String args[])
    {
    Scanner input=new Scanner(System.in);
    System.out.println("今天星期几");
    String day=input.next();
    char[] ch=day.toCharArray();
    switch(ch[2])
    {
    case '一':
    System.out.println("今天吃青菜");
    break;
    case '二':
    System.out.println("今天吃牛肉");
    break;
    default:break;
    }}} 
    别用String去switch
      

  2.   

    switch 语句只能只能是char型,和int型的,不能是string的。
      

  3.   

    switch(day)中day不能用String类型的,可以用int或者枚举类型
      

  4.   

    10 Cannot switch on a value of type String. Only int values or enum constants are permitted
    12 Syntax error, insert ":" to complete SwitchLabel
    15 Syntax error, insert ":" to complete SwitchLabel
      

  5.   

    switch(day)中day不能用String类型的,里面的参数只可以是基本类型的或者枚举类型的public class Demo04 {
    public static void main(String args[]) {
    Scanner input = new Scanner(System.in);
    System.out.println("今天星期几");
    int day = input.nextInt();
    switch (day) {
    case '1':
    System.out.println("今天吃青菜");
    break;
    case '2':
    System.out.println("今天吃牛肉");
    break;
    default:
    }
    }
    }
      

  6.   

    C#的可以,哈哈,为什么Java不行咧,有没有能解释的?
      

  7.   

    马上最新的Java1.7就要支持用String作为switch了~
      

  8.   

    找到原因了`象上面说的不能用STRING```
    还有case后面是: