應用「enum」關鍵字來聲明一個枚舉類型,聲明方法爲:數組
public enum enumlist{ //定義枚舉類型成員函數
成員1,成員2,成員3,……成員nthis
}spa
定義好枚舉類型變量後,在程序中調用的方法爲:對象
enumlist list=enumlist.成員n;字符串
示例代碼:get
package cn.cjj.basic;it
import org.junit.Test;class
public class demo3_meiju {
//如何定義枚舉的構造函數、方法和字段,去封裝更多的信息
/*@Test
public void test(){
print(Grade.B);
}
public void print(Grade g){
String value2=g.getValue();
System.out.println(value2);
}
//枚舉,至關於定義了一個類
enum Grade{
A("100-90"),
B("89-80"),
C("79-70"),
D("69-60"),
E("59-0");
private String value;//封裝每一個對象對應的分數
private Grade(String value){
this.value=value;
}
public String getValue(){
return this.value;
}
}
*/
//帶抽象方法的枚舉
@Test
public void test2(){
//獲取枚舉類的類名
System.out.println(Grade2.C.name());
//獲取枚舉類的位置
System.out.println(Grade2.C.ordinal());
//獲取字符串枚舉,監測傳的類是不是本身寫的枚舉值
String str="B";
Grade2 g=Grade2.valueOf(str);
System.out.println(g);
//返回全部的枚舉值,返回的是數組
Grade2 gs[]=Grade2.values();
for(Grade2 g1:gs){
System.out.println(g1);
}
print2(Grade2.B);
}
public void print2(Grade2 g){
String value=g.localValue();
System.out.println(value);
}
enum Grade2{
A("100-90"){
public String localValue(){
return "優";
}
},
B("89-80"){
public String localValue(){
return "優";
}
},
C("79-70"){
public String localValue(){
return "優";
}
},
D("69-60"){
public String localValue(){
return "優";
}
},
E("59-0"){
public String localValue(){
return "優";
}
};
private String value;//封裝每一個對象對應的分數
private Grade2(String value){
this.value=value;
}
public String getValue(){
return this.value;
}
public abstract String localValue();
}
}test