c语言switch不可以用枚举,化解一个误区,其实switch和enum是能够很方便配合使用的...

enum switch case label must be the unqualified name of an enumeration constant 或 错误: 枚举 switchcase 标签必须为枚举常量的非限定名称case ColorType.GREEN:java

在我们Android开发中,有一个变量可能会被不少界面引用,因此咱们就会在它前面增长static final public这样的修饰,但写多了,总感受到比较散,后来我想到了enum类型,但在使用的过程,我遇到一个问题:enum和switch总是报错,如第一段的一个错的两种提示,之前很菜,不懂,当时就认为安卓自己就不支持enum和switch一块儿使用,随着开发的经验愈来愈丰富,又回想起这事,感受不对呀,因而去查了点资料,试了试,哈哈,原来是能够的,因此我把它记录下来,分享给你们!code

首先声明一个enum类:blog

public enum ColorType{

GREEN,

RED,

ORANGE,

WHITE,

BLACK

}

如今我写一下我以前错误的写法:开发

private void TestEnum(ColorType type){

switch (type){

case ColorType.GREEN:

break;

case ColorType.RED:

break;

case ColorType.ORANGE:

break;

case ColorType.WHITE:

break;

case ColorType.BLACK:

break;

default:

}

}

以下图,我使用红框标出来it

9abb22759bf74ee4413c58421f0cd301.png

正确写法应该是case后面的enum项不要带ColorType:io

private void TestEnum(ColorType type){

switch (type){

case GREEN:

break;

case RED:

break;

case ORANGE:

break;

case WHITE:

break;

case BLACK:

break;

default:

}

}

以下图:class

24da889f38163ddfd0136c04f9dd7157.png

我思考了下以前为何总是觉得case后面,enum项前面必须加一个enum类型,由于个人Enum类写在一个文件里,若是在另的文件引用它,我就以为必须加一个范围或者限制词,如张三,你们就会以为哪里的张三,我就会说中国XX省XX市XX县XX镇XX村XX组的张三,哎,却在switch和enum联用时,误导了咱!变量

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值