还有char byte short这些类型都可以
String 是java中的一个static类
这种问题最好不要提,看看书就全知道了

解决方案 »

  1.   

    当然不可以了,switch(int),case int,也就是说都必须是整型的,字符型的也可以,因为字符转换成ascii码就是整型的了
      

  2.   


    if(express){}
    else if(express){}
    .
    .
    .
    else{}
      

  3.   

    只能用整数放在switch()中比较。
    你的source的第一行少加了“;”号。
    我写了一个解法。但不够灵活,但放在一个循环中就可以了!
            String str1 = "aa";
            String str2 = "bb";
            switch (str1.compareTo(str2)) {
              case 0: System.out.println("OK");
                         break;
              default: System.out.println("Error");
                         break;
            }
    String型的对象要用compareTo()的方法来比较。        String str1 = "aa";
            String[] str2 = {"bb", "aa", "cc", "aaa"};
            for (int i = 0; i < str2.length; ++i){
                switch (str1.compareTo(str2[i])) {
                  case 0: System.out.println("OK");
                          break;
                  default: System.out.println("Error");
                            break;
                }
            }
    请多多指教!:)
      

  4.   

    java,c/c++ :switch()中只能用序列数(包括字符)
    C# : switch()中 可以用序列数,字符和字符串.
      

  5.   

    switch() 可以使用
    byte型 (1 byte), 
    char型 (2 bytes),
    short型 (2 bytes),
    int型 (4 bytes)
      

  6.   

    c#里能实现
    java出的比较早
    大概是没想到 或是没有什么必要吧
      

  7.   

    用arraylist吧,把字符串存里去,然后
    arraylist.add("123");
    arraylist.add("wewewe");
    ....
    string str = "123";
    switch(arraylist.indexof(str))
    {
      case 0:
      
      break;
      case 1:
      break;
      default:}
      

  8.   

    上面的类不知道存在不存在,
    楼主可以找一下,也可以用字符串数组 string[] str = new string[100];
      

  9.   

    只能是primitives类型,String不可以
      

  10.   

    不行,其实switch/case 实质上是 一个goto与若干label 标签 ,只支持整形,int, long, short, char可以
      

  11.   

    漏了还有byte, 反正凡是整形的(不是int那个整形,而是相对于浮点型)都可以
      

  12.   

    char int short byte
    只有这4个