public enum LanguageEnum {//此处引用语言类型枚举
C("C"), CPP("C++"), JAVA("JAVA"), CS("C#"), JAVASCRIPT("JAVASCRIPT"), PYTHON("PYTHON"),HTML("HTML"),CSS("CSS");
private String value;
private static String[] svalues;
private LanguageEnum(String value) {
this.value = value;
}
public String toString() { //toString 方法,将枚举转化为字符串
return value;
}
public static LanguageEnum of(String language) { // of 方法,将字符串转换为枚举
for (LanguageEnum lan : LanguageEnum.values()) {
if (lan.toString().equals(language) || lan.name().equals(language)) {
return lan;
}
}
return null;
}
public static String[] getValues() { //getValues 方法,获取所有枚举
if (svalues == null) {
LanguageEnum[] values = LanguageEnum.values();
svalues = new String[values.length];
for (int x = 0; x < values.length; x++) {
svalues[x] = values[x].toString();
}
}
return svalues;
}
public static boolean isInclude(String key) { //判断 key 是否为枚举类型
boolean include = false;
for(LanguageEnum e : LanguageEnum.values()) {
if(e.name().equals(key)) {
include = true;
break;
}
}
return include;
}
public static boolean isIncludeCN(String key) { //判断 key 是否为 枚举类型的 cns
boolean include = false;
for(LanguageEnum e : LanguageEnum.values()) {
if(e.getCN().equals(key)) {
include = true;
break;
}
}
return include;
}