<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 495,comments - 227,trackbacks - 0
    http://www.cnblogs.com/cuizhf/archive/2011/08/22/2150046.html

    enum<->int

    enum -> int: int i enumType.value.ordinal();
    int -> enum: enumType b= enumType.values()[i];

     

    enum<->String

    enum -> String: enumType.name()

    String -> enum: enumType.valueOf(name);

     --------------------------------------------------------------------------

    http://stackoverflow.com/questions/604424/java-enum-converting-string-to-enum

    有時間整理測試一下這個帖子中的內容,同事參考《Effective Java中文版第2版》第30條內容,更新本帖。

    ---------------------------------------------------------------------------

    下面是Enum和字符串類型轉化的例子。

    第一個例子:字符串和枚舉值不相同,注意覆蓋toString方法。
    復制代碼
    import java.util.HashMap;
    import java.util.Map;

    /**
     *
     * @author admin
     
    */
    public enum Blah {
        A(
    "text1"),
        B(
    "text2"),
        C(
    "text3"),
        D(
    "text4");
        
        
    private String text;
        
        Blah(String text) {
            
    this.text = text;
        }
        
        
    public String getText() {
            
    return this.text;
        }
        
        
    // Implementing a fromString method on an enum type
        private static final Map<String, Blah> stringToEnum = new HashMap<String, Blah>();
        
    static {
            
    // Initialize map from constant name to enum constant
            for(Blah blah : values()) {
                stringToEnum.put(blah.toString(), blah);
            }
        }
        
        
    // Returns Blah for string, or null if string is invalid
        public static Blah fromString(String symbol) {
            
    return stringToEnum.get(symbol);
        }

        @Override
        
    public String toString() {
            
    return text;
        }
    }
    復制代碼
     第2個例子,字符串和枚舉值相同,這個更為簡單。

     

    復制代碼
    import java.util.HashMap;
    import java.util.Map;

    /**
     *
     * @author admin
     
    */
    public enum Blah {
        A,
        B,
        C,
        D;

        
    // Implementing a fromString method on an enum type
        private static final Map<String, Blah> stringToEnum = new HashMap<String, Blah>();
        
    static {
            
    // Initialize map from constant name to enum constant
            for(Blah blah : values()) {
                stringToEnum.put(blah.toString(), blah);
            }
        }
        
        
    // Returns Blah for string, or null if string is invalid
        public static Blah fromString(String symbol) {
            
    return stringToEnum.get(symbol);
        }
    }
    復制代碼

     

     至于整形和Enum之間的轉換,也可類似處理。

     

    posted on 2012-11-07 14:54 SIMONE 閱讀(5955) 評論(0)  編輯  收藏 所屬分類: JAVA
    主站蜘蛛池模板: 国产av天堂亚洲国产av天堂| 最近中文字幕无吗免费高清| 国产成人精品免费视频软件| 精品日韩99亚洲的在线发布| 最近新韩国日本免费观看| 久久青青草原亚洲av无码app | 亚洲AV无码一区二区乱子伦| 亚洲第一视频在线观看免费| 亚洲中文字幕视频国产| 成人毛片100免费观看| 亚洲中文字幕无码一区| 久久成人无码国产免费播放| 亚洲∧v久久久无码精品| 91免费国产精品| 国产成人精品日本亚洲专一区| 免费无码又爽又刺激高潮| 色费女人18女人毛片免费视频| 亚洲视频在线免费| 国产啪精品视频网站免费尤物| 久久国产亚洲电影天堂| 24小时日本韩国高清免费| 激情综合亚洲色婷婷五月APP| 免费看的成人yellow视频| 人妻18毛片a级毛片免费看| 久久99国产亚洲高清观看首页| 在线日本高清免费不卡| 亚洲欧洲av综合色无码| 亚洲国产一区视频| 日本黄色动图免费在线观看| 亚洲一区免费视频| 免费一级毛片清高播放| 国产三级在线免费| 亚洲人成网亚洲欧洲无码| 亚洲视频在线一区二区| 午夜免费1000部| 性生大片视频免费观看一级| 亚洲va在线va天堂va888www| 麻豆国产人免费人成免费视频| 国产精品小视频免费无限app| 亚洲成人在线免费观看| 亚洲片国产一区一级在线观看 |