论枚举的正确使用方式
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
/**
* @Description 论枚举类的正确使用方式
* @Author 踏步
* @Date 2021/7/11 16:28
**/
public enum MsgTypeEnum {
PiKaQiu("PiKaQiu",512,"这是一只皮卡丘"),
PiKaPing("PiKaPing",513,"这是一只皮卡乒"),
PiKaPang("PiKaPang",514,"这是一只皮卡乓"),
PiKaBing("PiKaBing",515,"这是一只皮卡兵");
/*
这是一只皮卡丘
*/
public static final int Msg_PiKaQiu = 512;
/*
这是一只皮卡乒
*/
public static final int Msg_PiKaPing = 513;
/*
这是一只皮卡乓
*/
public static final int Msg_PiKaPang = 514;
/*
这是一只皮卡兵
*/
public static final int Msg_PiKaBing = 515;
/*
类型编号
*/
private String typeName;
/*
类型编号
*/
private int typeNo;
/*
类型描述
*/
private String description;
public String getTypeName() {
return this.typeName;
}
public int getTypeNo() {
return this.typeNo;
}
public String getDescription() {
return this.description;
}
MsgTypeEnum(String typeName, int typeNo, String description){
this.typeName = typeName;
this.typeNo = typeNo;
this.description = description;
}
/*
把所有的MsgTypeEnum转为List
*/
public static List<MsgTypeEnum> toList(){
return new ArrayList<MsgTypeEnum>(Arrays.asList(MsgTypeEnum.values()));
}
@Override
public String toString() {
return "MsgTypeEnum{typeName='"+this.typeName+"',typeNo="+this.typeNo+",description='"+this.description+"'}";
}
public static void main(String[] args) {
/*
枚举取值方法
*/
System.out.println("PiKaBing的toString():"+MsgTypeEnum.PiKaBing);
System.out.println("PiKaBing的typeName:"+MsgTypeEnum.PiKaBing.typeName);
System.out.println("PiKaBing的typeNo:"+MsgTypeEnum.PiKaBing.typeNo);
System.out.println("PiKaBing的description:"+MsgTypeEnum.PiKaBing.description);
/*
遍历输出所有的枚举值
*/
System.out.println("-------------遍历输出所有的枚举值开始-------------");
List<MsgTypeEnum> msgTypeEnums = MsgTypeEnum.toList();
for (MsgTypeEnum msgTypeEnum : msgTypeEnums) {
System.out.println(msgTypeEnum.toString());
}
System.out.println("-------------遍历输出所有的枚举值结束-------------");
/*
Service注解使用枚举方式
*/
System.out.println("Service注解使用枚举方式:"+MsgTypeEnum.Msg_PiKaBing);
}
}
运行结果
Service注解使用枚举
import org.springframework.stereotype.Service;
/**
* @Description Service注解使用枚举值
* @Author 踏步
* @Date 2021/7/15 11:40
**/
@Service("BiuBiuBiu"+MsgTypeEnum.Msg_PiKaBing)
public class MaKaBaKaService {
public static void main(String[] args) {
System.out.println("特殊场景下使用 'BiuBiuBiu515' 作为Service的注解");
}
}