Enum與String類型的比較

起因:在做最近一個druid查詢項目的時候,由於queryType有多種所以想做成枚舉類來實現,但是代碼邏輯中有用到該枚舉類和string比較的情況,實現方式如下:

枚舉類:

public enum QueryTypeEnum {
    /**
     * 不支持分組
     */
    TIMESERIES,
    /**
     * 支持單一維度分組
     */
    TOPN,
    /**
     * 支持多維度分組
     */
    GROUPBY;
}

和String串做比較:

if (QueryTypeEnum.TOPN.equals(QueryTypeEnum.valueOf(queryType.toUpperCase()))) {
    ...
}

嗯,差不多就是這樣,穿插一個小插曲:之前我定義的枚舉類是這樣的:public static enum QueryTypeEnum{...}

static字段是無用的,差點讓人笑掉大牙,哈哈。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章