Ⅰ java枚舉類可以給其中的一個變數賦值嗎
可以,默認是整型的,該變數後的變數值都以這個變數為起始值加1
Ⅱ java枚舉是什麼意思舉個最簡單的例子
枚舉是一種類型,用於定義變數,以限制變數的賦值 賦值時通過"枚舉名.值"來取得相關枚舉中的值
public enum Season {
winter, spring, summer, fall;
}
表示Season(季節)的值只能是枚舉裡面定義的 winter, spring, summer, fall(春夏秋冬);
Ⅲ java中的枚舉如何根據數字得到文本值
把枚舉轉換成int型就可以了 。
枚舉值是常量,不是變數。不能在程序中用賦值語句再對它賦值。例如對枚舉weekday的元素再作以下賦值: sun=5;mon=2;sun=mon; 都是錯誤的。
枚舉元素本身由系統定義了一個表示序號的數值,從0 開始順序定義為0,1,2…。如在weekday中,sun值為0,mon值為1, …,sat值為6。
如
String str = sun;
int week;
if(str.equals(枚舉值)){
week = 0;
}
Ⅳ java枚舉類可以給其中的一個變數賦值嗎
枚舉是 jdk1.4的特性
給其中的一個賦值 需要點技巧
我直接上代碼
Ⅳ java枚舉問題
package com.ljq.test;
/**
* 枚舉用法詳解
*
* @author jiqinlin
*
*/
public class TestEnum {
/**
* 普通枚舉
*
* @author jiqinlin
*
*/
public enum ColorEnum {
red, green, yellow, blue;
}
/**
* 枚舉像普通的類一樣可以添加屬性和方法,可以為它添加靜態和非靜態的屬性或方法
*
* @author jiqinlin
*
*/
public enum SeasonEnum {
//註:枚舉寫在最前面,否則編譯出錯
spring, summer, autumn, winter;
private final static String position = "test";
public static SeasonEnum getSeason() {
if ("test".equals(position))
return spring;
else
return winter;
}
}
/**
* 性別
*
* 實現帶有構造器的枚舉
*
* @author jiqinlin
*
*/
public enum Gender{
//通過括弧賦值,而且必須帶有一個參構造器和一個屬性跟方法,否則編譯出錯
//賦值必須都賦值或都不賦值,不能一部分賦值一部分不賦值;如果不賦值則不能寫構造器,賦值編譯也出錯
MAN("MAN"), WOMEN("WOMEN");
private final String value;
//構造器默認也只能是private, 從而保證構造函數只能在內部使用
Gender(String value) {
this.value = value;
}
public String getValue() {
return value;
}
}
/**
* 訂單狀態
*
* 實現帶有抽象方法的枚舉
*
* @author jiqinlin
*
*/
public enum OrderState {
/** 已取消 */
CANCEL {public String getName(){return "已取消";}},
/** 待審核 */
WAITCONFIRM {public String getName(){return "待審核";}},
/** 等待付款 */
WAITPAYMENT {public String getName(){return "等待付款";}},
/** 正在配貨 */
ADMEASUREPRODUCT {public String getName(){return "正在配貨";}},
/** 等待發貨 */
WAITDELIVER {public String getName(){return "等待發貨";}},
/** 已發貨 */
DELIVERED {public String getName(){return "已發貨";}},
/** 已收貨 */
RECEIVED {public String getName(){return "已收貨";}};
public abstract String getName();
}
public static void main(String[] args) {
//枚舉是一種類型,用於定義變數,以限制變數的賦值;賦值時通過「枚舉名.值」取得枚舉中的值
ColorEnum colorEnum = ColorEnum.blue;
switch (colorEnum) {
case red:
System.out.println("color is red");
break;
case green:
System.out.println("color is green");
break;
case yellow:
System.out.println("color is yellow");
break;
case blue:
System.out.println("color is blue");
break;
}
//遍歷枚舉
System.out.println("遍歷ColorEnum枚舉中的值");
for(ColorEnum color : ColorEnum.values()){
System.out.println(color);
}
//獲取枚舉的個數
System.out.println("ColorEnum枚舉中的值有"+ColorEnum.values().length+"個");
//獲取枚舉的索引位置,默認從0開始
System.out.println(ColorEnum.red.ordinal());//0
System.out.println(ColorEnum.green.ordinal());//1
System.out.println(ColorEnum.yellow.ordinal());//2
System.out.println(ColorEnum.blue.ordinal());//3
//枚舉默認實現了java.lang.Comparable介面
System.out.println(ColorEnum.red.compareTo(ColorEnum.green));//-1
//--------------------------
System.out.println("===========");
System.err.println("季節為" + SeasonEnum.getSeason());
//--------------
System.out.println("===========");
for(Gender gender : Gender.values()){
System.out.println(gender.value);
}
//--------------
System.out.println("===========");
for(OrderState order : OrderState.values()){
System.out.println(order.getName());
}
}
}
Ⅵ Java枚舉問題
Java的enum(枚舉)和其他語言不同。Java的enum也是一個正式的class,也有它的屬性,函數,等等。這里
private String name;
就是一個成員,而
private CupShop(String name){...}
就是一個構造函數(constructor). enum的結構是先要聲明一些枚舉的值,然後用分號隔開,然後聲明所有成員及函數。而cup1("num1")的意思就相當於
public static final CupShop cup1 = new CupShop("num1");
如果這樣理解的話,就知道enum其實就是一個class,只不過為程序員提供了一個簡便的創建方式。當然,一個enum的constructor必須是private的,因為只有enum內部可以聲明enum可能取的值。
Ⅶ java枚舉必須要給賦默認值么
枚舉變數未賦初值,其默認的值是0,後面的依次加1。
枚舉類型
枚舉類型在C#或C++,java,VB等一些計算機編程語言中是一種基本數據類型而不是構造數據類型,而在C語言等計算機編程語言中是一種構造數據類型。它用於聲明一組命名的常數,當一個變數有幾種可能的取值時,可以將它定義為枚舉類型。
枚舉可以根據Integer、Long、Short或Byte中的任意一種數據類型來創建一種新型變數。這種變數能設置為已經定義的一組之中的一個,有效地防止用戶提供無效值。該變數可使代碼更加清晰,因為它可以描述特定的值。
Ⅷ java中如何將枚舉值用循環輸出
java中可以私用enummap來保存枚舉值,示例如下:
privatestaticvoidtestEnumMap(){
//1.演示定義EnumMap對象,EnumMap對象的構造函數需要參數傳入,默認是key的類的類型
EnumMap<Light,String>currEnumMap=newEnumMap<Light,String>(
Light.class);
currEnumMap.put(Light.RED,"紅燈");
currEnumMap.put(Light.GREEN,"綠燈");
currEnumMap.put(Light.YELLOW,"黃燈");
//2.遍歷對象
for(LightaLight:Light.values()){
System.out.println("[key="+aLight.name()+",value="
+currEnumMap.get(aLight)+"]");
}
}
Ⅸ 如何給java枚舉賦值比如一個枚舉中有A,B,C三個元素,如何給A賦值a,B賦值b。然後通過"枚舉對象.A"獲值
package com.lsc.test;
public enum Score {
A("a"),
B("b"),
C("c");
private final String value;
Score(String value){
this.value = value;
}
public String value(){
return this.value;
}
public static void main(String[] args) {
System.out.println(Score.A.value);
}
}
Ⅹ Java中枚舉類型怎麼賦值
publicenumPath{
PATH1("/home/acer/logs1"),
PATH2("/home/acer/logs2"),
PATH3("/home/acer/logs3"),
PATH4("/home/acer/logs4");
privateStringpath;
Path(Stringpath){
this.path=path;
}
publicStringgetPath(){
returnpath;
}
//測試方法
publicstaticvoidmain(String[]args){
System.out.println(Path.PATH1.getPath());
System.out.println(Path.PATH2.getPath());
System.out.println(Path.PATH3.getPath());
System.out.println(Path.PATH4.getPath());
}
}