Java中的列舉 EnumMap與EnumSet

2021-06-30 16:04:33 字數 749 閱讀 1858

public enum databasetype

//某類中定義的獲取資料庫url的方法以及enummap的宣告。

……private enummapurls =

new enummap(databasetype.class);

public databaseinfo()

/*** 根據不同的資料庫型別,返回對應的url

* @param type         databasetype列舉類新例項

* @return

*/public string geturl(databasetype type)

在實際使用中,enummap物件urls往往是由外部負責整個應用初始化的**來填充的。這裡為了演示方便,類自己做了內容填充。

像例子中那樣,使用enummap可以很方便的為列舉型別在不同的環境中繫結到不同的值上。如:例子中geturl繫結到url上,在其它的**中可能又被繫結到資料庫驅動上去。

enumset是列舉型別的高效能set實現。它要求放入它的列舉常量必須屬於同一列舉型別。enumset提供了許多任務廠方法以便於初始化,見下表:

enumset作為set介面實現,它支援對包含的列舉常量的遍歷:

for(operation op : enumset.range(operation.plus , operation.multiply))

Java中列舉的詳解

列舉是jdk1.5版本新增的特性 泛型 for each等如今被廣泛應用的特性也是由jdk1.5時所新增的 另外到了jdk1.6後switch語句支援列舉型別。列舉的好處以及與常量類的區別 1 列舉型可以直接與資料庫打交道,我通常使用varchar型別儲存,對應的是列舉的常量名。資料庫中好像也有列舉...

Java列舉中巢狀列舉用例

最近專案中需要在列舉類中定義列舉常量的子列舉,翻了一下程式設計思想,順手寫了乙個列舉中巢狀列舉的小demo,供各位碼友參考。public enum testenum public string getcode public string getdescription enum high implem...

java開發中的列舉類

定義乙個列舉類public enum seasonenum列舉類常用方法int compareto e o 該方法用於與指定列舉物件比較順序 string name 返回列舉例項的名稱 int ordinal 返回列舉值在列舉中的索引值 string tostring 返回列舉常量的名稱 定義乙個帶...