Javaのenum(列挙)の使い方を詳しく解説

王林
リリース: 2019-11-27 15:49:34
転載
2642 人が閲覧しました

Javaのenum(列挙)の使い方を詳しく解説

Java Enum 原則:

public enum Size{ SMALL, MEDIUM, LARGE, EXTRA_LARGE };
ログイン後にコピー

実際、この宣言で定義された型はクラスであり、インスタンスはちょうど 4 つあります。新しいオブジェクトを構築しないこと。

したがって、2 つの列挙型の値を比較する場合、equals メソッドを呼び出す必要はなく、「==」を直接使用するだけです。 (equals() メソッドでも == を直接使用します。どちらも同じ効果があります。)

関連ビデオチュートリアルの推奨事項:Java 教育ビデオ

使用法 1:定数

JDK1.5 より前に定義した定数は、public static fianl....でした。さて、列挙型を使用すると、関連する定数を列挙型にグループ化でき、列挙型は定数よりも多くのメソッドを提供します。

public enum Color { RED, GREEN, BLANK, YELLOW }
ログイン後にコピー

使用法 2: switch

JDK1.6 より前の switch ステートメントは、int、char、および enum 型のみをサポートしています。列挙型を使用すると、コードを読みやすくできます。 。

enum Signal { GREEN, YELLOW, RED } public class TrafficLight { Signal color = Signal.RED; public void change() { switch (color) { case RED: color = Signal.GREEN; break; case YELLOW: color = Signal.RED; break; case GREEN: color = Signal.YELLOW; break; } } }
ログイン後にコピー

使用法 3: 列挙型に新しいメソッドを追加する

独自のメソッドをカスタマイズする場合は、列挙型インスタンス シーケンスの最後にセミコロンを追加する必要があります。また、Java では、最初に enum インスタンスを定義する必要があります。

public enum Color { RED("红色", 1), GREEN("绿色", 2), BLANK("白色", 3), YELLO("黄色", 4); // 成员变量 private String name; private int index; // 构造方法 private Color(String name, int index) { this.name = name; this.index = index; } // 普通方法 public static String getName(int index) { for (Color c : Color.values()) { if (c.getIndex() == index) { return c.name; } } return null; } // get set 方法 public String getName() { return name; } public void setName(String name) { this.name = name; } public int getIndex() { return index; } public void setIndex(int index) { this.index = index; } }
ログイン後にコピー

使用法 4: 列挙メソッドのオーバーライド

次に、toString() メソッドをオーバーライドする例を示します。

public class Test { public enum Color { RED("红色", 1), GREEN("绿色", 2), BLANK("白色", 3), YELLO("黄色", 4); // 成员变量 private String name; private int index; // 构造方法 private Color(String name, int index) { this.name = name; this.index = index; } // 覆盖方法 @Override public String toString() { return this.index + "_" + this.name; } } public static void main(String[] args) { System.out.println(Color.RED.toString()); } }
ログイン後にコピー

使用法 5: インターフェイスの実装

すべての列挙は java.lang.Enum クラスから継承します。 Java は多重継承をサポートしていないため、列挙オブジェクトは他のクラスから継承できません。

public interface Behaviour { void print(); String getInfo(); } public enum Color implements Behaviour { RED("红色", 1), GREEN("绿色", 2), BLANK("白色", 3), YELLO("黄色", 4); // 成员变量 private String name; private int index; // 构造方法 private Color(String name, int index) { this.name = name; this.index = index; } // 接口方法 @Override public String getInfo() { return this.name; } // 接口方法 @Override public void print() { System.out.println(this.index + ":" + this.name); } }
ログイン後にコピー

使用法 6: インターフェイスを使用して列挙を整理する

public interface Food { enum Coffee implements Food { BLACK_COFFEE, DECAF_COFFEE, LATTE, CAPPUCCINO } enum Dessert implements Food { FRUIT, CAKE, GELATO } }
ログイン後にコピー

その他の関連記事とチュートリアルについては、次のサイトを参照してください:Java 入門

以上がJavaのenum(列挙)の使い方を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:cnblogs.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!