5

enumにはenum定数を取得するメソッドがあり、名前を持つクラスにvalueOf(string)存在する同じタイプのメソッド が両方とも同じ出力を出していることがわかりました。次に、他の違いは何ですか。違いがない場合、なぜJSLが追加されたのですか?java.lang.EnumvalueOf(enumClassName, string)Enum.valueOf()

enum Season {
    WINTER,SUMMER
}

class Test {
    public static void main(String[] args) {
        String season = "WINTER";

        //switch (Season.valueOf(colObject))  // following line achieves same thing
        switch (Enum.valueOf(Season.class, season)) // any other difference between both approach
        {
            case WINTER: {
                System.out.println("Got it in switch case= VENDOR");
                break;
            }
            default:
                System.out.println("Fell thru.");
                break;
            }
    }
}
4

3 に答える 3

2

Enum.valueOf(Class<T>, String)特定の列挙型クラスごとに生成されたメソッドを実装するために使用されます。valueOf(String)

于 2013-04-05T00:38:01.540 に答える