老生常谈…对于大佬们根本都不用看的博客!
对于像我这种菜鸡还是得一步一步的来!如果有错误请大佬们指点指点!
枚举
枚举是什么东西? 这是由JDK5引出来的概念,个人理解:很多时候我们在不同的类和方法中要重复使用一些常量,我们就可以将这些重复性使用的归类成不同的枚举类型,这样我们需要哪种类型的常量就从这个枚举中调用即可。
作为常量
public enum Color {
RED,
GREEN,
WHITE,
YELLOW
}
System.out.println(Color.RED);
以前我们定义常量一边都是
public static final String RED = “RED”;
现在我们可以将这种常量归到枚举类里
需要时我们可以进行调用
switch支持enum
swicth支持的数据类型包含一下:
基本数据类型:byte, short, char, int
包装数据类型:Byte, Short, Character, Integer
枚举类型:Enum
字符串类型:String(JDK 7+ )
Color red = Color.RED;
switch (red) {
case RED:
System.out.println("1");
break;
case YELLOW:
System.out.println("2");
break;
case GREEN:
System.out.println("3");
break;
case WHITE:
System.out.println("4");
break;
default:
System.out.println("0");
}
枚举中可以添加方法与变量
public enum Color {
RED("红色",1),
GREEN("绿色",2),
WHITE("白色",3),
YELLOW("黄色",4);
private String name;
private int index;
//构造函数
Color() {
}
private Color(String name, int index) {
this.name = name;
this.index = index;
}
//get与set
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getIndex() {
return index;
}
public void setIndex(int index) {
this.index = index;
}
//自定义的方法
public static void getColors(){
for (Color value : Color.values()) {
System.out.println(value.getName()+"-"+value.getIndex());
}
}
}
如果要添加方法和变量要在最后加上一个分号,而且一定要定义构造方法。
枚举可以实现接口
不举例子了,根据特点场景可以进行使用!