一、定义枚举的构造函数、方法和字段举例:
1、代码:
package cn.itcast.enumeration;
import org.junit.Test;
public class Demo1 {
@Test
public void test() {
print(Grade.B);
}
public void print(Grade g) {
System.
out.println(g.getValue());
}
}
enum Grade {
A(
"90-100"), B(
"80-89"), C(
"70-79"), D(
"60-69"), E(
"0-59");
private String
value;
private Grade(String
value) {
this.
value =
value;
}
public String
getValue() {
return this.
value;
}
}
2、Junit运行test函数结果:
二、枚举的抽象方法示例
1、代码:
package cn.itcast.enumeration2;
import org.junit.Test;
public class Demo1 {
@Test
public void test() {
print(Grade.B);
}
public void print(Grade g) {
System.
out.println(g.localValue()+
"---"+g.getValue());
}
}
enum Grade {
A(
"90-100") {
public String
localValue() {
return "优";
}
},
B(
"80-89") {
public String
localValue() {
return "良";
}
},
C(
"70-79") {
public String
localValue() {
return "一般";
}
},
D(
"60-69") {
public String
localValue() {
return "差";
}
},
E(
"0-59") {
public String
localValue() {
return "不及格";
}
};
private String
value;
private Grade(String
value) {
this.
value =
value;
}
public String
getValue() {
return this.
value;
}
public abstract String
localValue();
}
2、Junit运行test函数结果:
三、枚举的常用方法(示例)
package cn.itcast.enumeration2;
import org.junit.Test;
public class Demo1 {
@Test
public void test2() {
System.
out.println(Grade.C.name());
System.
out.println(Grade.C.ordinal());
String str =
"B";
Grade z = Grade.valueOf(str);
System.
out.println(z);
Grade gs[] = Grade.values();
for (Grade g1 : gs) {
System.
out.println(g1);
}
}
}
enum Grade {
A(
"90-100") {
public String
localValue() {
return "优";
}
},
B(
"80-89") {
public String
localValue() {
return "良";
}
},
C(
"70-79") {
public String
localValue() {
return "一般";
}
},
D(
"60-69") {
public String
localValue() {
return "差";
}
},
E(
"0-59") {
public String
localValue() {
return "不及格";
}
};
private String
value;
private Grade(String
value) {
this.
value =
value;
}
public String
getValue() {
return this.
value;
}
public abstract String
localValue();
}
转载请注明原文地址: https://ju.6miu.com/read-1302122.html