【Java】switch语句的参数类型

在JDK1.6的版本中,switch后面的括号里面只能放int类型的值,注意是只能放int类型,

但是放byteshortchar类型的也可以。

是因为byteshortshar可以自动提升(自动类型转换)为int

而不能放long型和String型



而在JDK1.7的版本中,switch中可以使用字串String。但仍不支持long型。


         String name = "b";   
         switch(name) {  
             case "b":  
            	 System.out.println("String可以用于switch语句");  
                 break;  
         } //可以运行


        long long_s = 22222;   
         switch (long_s) {   
         case 22222:   
         System.out.println("String可以用于switch语句");   
         break;   
         }    //报错!!!

【注】

即使JDK的版本为1.7,在myeclipse 也提示switch不能支持string。

这是因为myeclipse支持的jdk版本目前还不到1.7 compiler level最高才到6。

而换用Eclipse后即是没有问题的。

你可能感兴趣的:(java,switch)