当前位置:   article > 正文

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

c switch 不能是枚举

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联用时,误导了咱!变量

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/729094
推荐阅读
相关标签
  

闽ICP备14008679号