我的枚舉是這樣目前:設置枚舉值,並解析字符串得到一個枚舉
public enum Manufacturers {
Honda,
GM,
Toyota,
Ferrari
}
我需要做此創建一個HashMap所以打算,這是正確的?
Manufacturers mfg = Manufacturers.Honda;
mfg.ordinal() // save as key
即我將使用enumInstance.ordinal()
而且存儲的關鍵,我需要能夠解析這將是枚舉的序號值的字符串,並得到一個枚舉回:
Manufacturers mfg = Manufacturers.valueOf(mfgOrdinalValueAsString);
上面給了我一個錯誤(字符串是「1」)。這是正確的方法嗎?我想我應該有一個嘗試/抓住在那裏嗎?
我似乎無法明確設置序數值,我試過:GM(「5」),豐田(「6」) – Blankman
不,你不能設置它們 - 序號將與值在枚舉中聲明。 – ziesemer
如果由於某種原因,您需要與枚舉的每個元素(除了自動分配的序數)相關聯的不同'int'數字,您可以隨時將其作爲屬性添加到枚舉中,以及getters –