Where is the documentation for the values() method of Enum? Ask Question

Where is the documentation for the values() method of Enum? Ask Question

I declare an enum as :

enum Sex {MALE,FEMALE};

And then, iterate enum as shown below :

for(Sex v : Sex.values()){
    System.out.println(" values :"+ v);
}

Java API を確認しましたが、values() メソッドが見つかりません。このメソッドがどこから来たのか知りたいです。

APIリンク:列挙型

ベストアンサー1

このメソッドはコンパイラによって追加されたため、javadoc では表示されません。

3か所に文書化されています:

  • 列挙型、Javaチュートリアルより

コンパイラは、列挙型を作成するときに、いくつかの特別なメソッドを自動的に追加します。たとえば、宣言された順序で列挙型のすべての値を含む配列を返す静的な values メソッドがあります。このメソッドは、列挙型の値を反復処理するために、通常、for-each 構造と組み合わせて使用​​されます。

  • Enum.valueOfクラス
    (特別な暗黙的メソッドはメソッドvaluesの説明に記載されています)valueOf

列挙型のすべての定数は、その型の暗黙的な public static T[] values() メソッドを呼び出すことによって取得できます。

このvalues関数は列挙体のすべての値を単純にリストします。

おすすめ記事