1.简单枚举代码
import java.util.logging.Logger;
public class EnumTest {
enum animals{
dog,cow,duck;
}
public static void main(String[] args) {
//通过animals.values获取枚举值
for (animals ani:animals.values()
) {
System.out.println("枚举遍历"+ani.getClass()+" "+ani);
/*输出
class EnumTest$animals dog
枚举遍历class EnumTest$animals dog
枚举遍历class EnumTest$animals cow
枚举遍历class EnumTest$animals duck*/
}
}
}
2.自定义枚举类
package com.EnumTest;
public class Test01 {
public enum LOOK{
STU1("张三","帅哥"),
STU2("李四","丑批"),
STU3("小娜","美女");
LOOK(String name, String type) {
this.name = name;
this.type = type;
}
private String name;
private String type;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
//根据type来判断name
public static String getName_By_Type(String type){
for (LOOK look:LOOK.values()
) {
if (look.getType().equals(type)){
return look.getName();
}
}
return null;
}
//根据name判断type
public static String getType_By_Name(String name){
for (LOOK look:LOOK.values()
) {
if (look.getName().equals(name)){
return look.getType();
}
}
return null;
}
}
public static void main(String[] args) {
//一一列举
for (LOOK look:LOOK.values()
) {
System.out.println(look.getClass().toString()+" "+look);
}
System.out.println(LOOK.getName_By_Type("帅哥"));
System.out.println(LOOK.getType_By_Name("张三"));
//通过enum.valueOf(name)获取枚举对象:
System.out.println(LOOK.valueOf("STU1"));
//通过Enum.valueOf(enumClass,name)获取枚举对象
System.out.println(Enum.valueOf(LOOK.class,"STU1"));
}
}