----------------------------------- android培训 、 java培训 、期待与您交流! --------------------------------------
枚举是作为JDK1.5的新特性引入到Java中的,使用中如果需要使用该枚举类型,则只能获得枚举类型中定义好的值。
枚举的定义
public enum Color {
RED, GREEN, BLANK, YELLOW
}
当然这种简单的枚举是不具有多大实用性质的,我们还可以向枚举中添加方法,添加方法需要注意的有:
1、枚举序列前面必须放在最前面。
2、如果只有枚举序列,那么序列后面有没有;不重要,枚举序列后面如果还有其他内容,那么必须要在后面添加;
public enum Color {
RED("红色", 1), GREEN("绿色", 2), BLANK("白色", 3), YELLO("黄色", 4);
// 成员变量
private String name;
private int index;
// 构造方法
private Color(String name, int index) {
this.name = name;
this.index = index;
}
// 普通方法
public static String getName(int index) {
for (Color c : Color.values()) {
if (c.getIndex() == index) {
return c.name;
}
}
return null;
}
// 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;
}
}
如果需要打印枚举值,那么可以覆盖toString()方法。
public enum Color {
RED("红色", 1), GREEN("绿色", 2), BLANK("白色", 3), YELLO("黄色", 4);
// 成员变量
private String name;
private int index;
// 构造方法
private Color(String name, int index) {
this.name = name;
this.index = index;
}
//覆盖方法
@Override
public String toString() {
return this.index+"_"+this.name;
}
}
带接口的枚举
public interface Behaviour {
void print();
String getInfo();
}
public enum Color implements Behaviour{
RED("红色", 1), GREEN("绿色", 2), BLANK("白色", 3), YELLO("黄色", 4);
// 成员变量
private String name;
private int index;
// 构造方法
private Color(String name, int index) {
this.name = name;
this.index = index;
}
//接口方法
@Override
public String getInfo() {
return this.name;
}
//接口方法
@Override
public void print() {
System.out.println(this.index+":"+this.name);
}
}
-----------------------------------
android培训
、
java培训
、期待与您交流! --------------------------------------