expression是需要评估的表达式,value1、value2等是可能的常量值,当expression的值与某个case标签匹配时,执行相应的代码块。break语句用于跳出switch语句,防止执行后续的case代码块(即所谓的“贯穿”现象)。default标签是可选的,当没有case匹配时执行default代码块。 2. switch语句中case标签的要求 在Java中,switch语句的...
第一个编译错误:Constant expression required,代码如下: switch (meter.getBillingWay().toString()) { case SewageStrageEnum.SEWAGE_STRAGE_01.getValue(): paymentNotice = sewageMeterStratergy01.handle(meter, startDate, endDate); paymentNoticeList.add(paymentNotice); break; case SewageStrageEnum.SEWAGE_...
3.getValue(): System.out.println("1"); break; // 热门榜单 case ProductEnum.TYPE_ 4.getValue(): System.out.println("1"); break; } 1. 看上去没有问题,但是因为switch中需要的是一个常量,但是枚举中又是不可以加final关键字,所以会出现这种情况:(Constant expression required:需要常量表达式) 我们...
public static String lookup(int constant) { switch (constant) { case Foo.BAR: return "bar"; case Foo.BAZ: return "baz"; case Foo.BAM: return "bam"; default: return "unknown"; } } 但是,当我编译时,我在 3 个案例标签中的每一个上都收到 constant expression required 错误。 我知道编译...
public static String lookup(int constant) { switch (constant) { case Foo.BAR: return "bar"; case Foo.BAZ: return "baz"; case Foo.BAM: return "bam"; default: return "unknown"; }} 但是,当我编译时,我会得到一个constant expression required三个大小写标签上的每个错误。 我知道编译器需要在编...
可以看到,当使用 switch 语句进行判断时,在 case 后面的语句中出现 Constant expression required 的报错 解决方案 一、 使用 if-else 进行 switch 语句替换 我们可以将上述 switch 代码修改为 if-else 的,进行等价替换,消除问题。 Python Python @Override public void onClick(View v){int viewId=v.getId();...
Youmustinclude adefaultcase, even if you havecasefor every known value of theenum; seeWhy is default required for a switch on an enum? Thecaselabels must all be explicitenumvalues, not expressions that evaluate toenumvalues. 1 - The constant expression restrictions can be summarized as follo...
String str = "alegrucoding"; final int lengthOfTen = 10; int lengthOfTwelve = 12; switch (str.length()) { case lengthOfTen: // OK System.out.println("The length is 10"); break; case lengthOfTwelve: // DOESN'T COMPILE: "Constant expression required" System.out.println("The length...
It throws a “Constant expression required” error when it’s compiled and it points to the case p: line, however, it also throws it for f: if I switch them so I must be doing something completely off. 解决方案 Yes, a case expression has to be a constant (or an enum constant name...
switch语句编译报错Constant expression required switch表达式后面 java 数据类型 枚举类型 原创 chengzheng183 2023-05-29 11:51:52 49阅读 androidswitch语句switch语句运用 switch的中文翻译是:开关,顾名思义,开关的作用就是控制连通或者中断,在C语言中,switch语句的作用也是大同小异。 要学习switch语句就要了解switch...