java中的switch使用 case expressions must be constant expressions,Duplicate case
2014-11-07 17:03
507 查看
java中的switch问题,有时报告case expressions must be constant expressions,原因是缺少final;另外如果报告:Duplicate case,则是switch中的case值重复,用Java写时,不会像c一样,case是什么值都直接写出来,有时是类名.成员变量,如果成员变量没有定义好,则有可能会导致重复。
ps:以前一直学C,然后学了一年多的java,老是有个这样的观点,要写算法就只能写C,导致对于某一个问题,在语言的选择上浪费太多时间。不知道是不是错的,反正,现在想改成什么都用java写,java也可以acm,为什么我就不能用java写跟算法有关的东西。好,我要把以前的都用Java全部实现一遍。错就错吧
/** * case expressions must be constant expressions,Duplicate case * @author Sherlock * */ class Data{ public final static int data_3 = 3; public final int data_4 = 4; } public class test{ /** * 本类中的成员变量用于switch必须是final和static. */ public final static int inClassVariable = 1; public void testSwitch(){ //方法中的变量用于switch必须是final final int inWayVariable = 1; int test = 1; switch(test){ case inWayVariable : { System.out.println("inWayVariable"); } } } public static void main(String[] args){ //main方法中变量用于switch必须是final final int inMainVariable = 2; int test = 1; switch(test){ case inClassVariable : { System.out.println("inClassVariable"); break; } case inMainVariable : { System.out.println("inMainVariable"); break; } case Data.data_3 : { System.out.println("Data.data_3"); } } } }
ps:以前一直学C,然后学了一年多的java,老是有个这样的观点,要写算法就只能写C,导致对于某一个问题,在语言的选择上浪费太多时间。不知道是不是错的,反正,现在想改成什么都用java写,java也可以acm,为什么我就不能用java写跟算法有关的东西。好,我要把以前的都用Java全部实现一遍。错就错吧
相关文章推荐
- Error处理:Java switch case 报错:case expressions must be constant expressions
- Java switch case 报错:case expressions must be constant expressions
- Java 中switch case 枚举值使用报错:case expressions must be constant expressions
- android switch语句case expressions must be constant expressions
- Android switch语句“case expressions must be constant expressions”
- android 中 switch 时出现case expressions must be constant expressions
- Android switch 中 case expressions must be constant expressions 错误
- R.java case expressions must be constant expressions
- Android的Switch语句case expressions must be constant expressions错误的解决方法
- android switch语句报错:case expressions must be constant expressions
- android switch语句case expressions must be constant expressions
- android开发 switch语句编译报错“case expressions must be constant expressions”
- Library Project里面使用Case语句判断R.id值报错。case expressions must be constant expressions
- android switch语句case expressions must be constant expressions
- switch中出错:case expressions must be constant expressions
- Android的Switch语句case expressions must be constant expressions错误的解决方法
- Android switch语句报case expressions must be constant expressions
- 解决case expressions must be constant expressions
- case expressions must be constant expressions
- case expressions must be constant expressions