ホームページ > Java > &#&はじめる > JavaでのEnumクラスの共通メソッドの実装

JavaでのEnumクラスの共通メソッドの実装

王林
リリース: 2020-02-14 18:05:09
転載
2087 人が閲覧しました

JavaでのEnumクラスの共通メソッドの実装

列挙型の事前定義メソッド:

public static enumtype[] values()    //枚举类型的数组,该数组包含枚举的所有枚举成员,并按他们的生命顺序存储    
public static enumtype valueOf(String str)    //返回名称为str的枚举成员
ログイン後にコピー

java の例:

package java示例;

enum Direction
{
	EAST,NORTH,SOUTH,WEST
}

public class 不包含方法的枚举 {
	public static void main(String[] args)
	{
		Direction dir=Direction.EAST;
		Direction dir1=Direction.valueOf("NORTH");
		System.out.print(dir);
		System.out.println("  "+dir1);
		for(Direction d:Direction.values())
		//d.ordinal()返回枚举成员在枚举中的序号
		//d.name()返回枚举常量的名称
			System.out.println("序号:"+d.ordinal()+"的值为:"+d.name());
	}
}
运行结果:
EAST  NORTH
序号:0的值为:EAST
序号:1的值为:NORTH
序号:2的值为:SOUTH
序号:3的值为:WEST
ログイン後にコピー

すべての列挙クラスは java .lang,Enum を継承するため、これはクラスは、ユーザーが使用する列挙のパブリック メソッドを定義します。 Enum クラスは java.lang.Comoarable と java.lang.Serializable の 2 つのインターフェイスを実装しているため、列挙型ではコンパレータとトラバーサル操作を使用できます。

(関連する学習ビデオの共有: java ビデオ チュートリアル)

以下は Enum クラスの一般的なメソッドです:

public final int comparaTo(E o)	//返回当前枚举成员与参数枚举成员o在定义时顺序的比较结果
public final String name()	//返回枚举常量的名称
public final int ordinal()	//返回枚举成员在枚举中的序号
public final boolean equals(Object obj)	//比较两个枚举引用的对象是否相等
public String toString()	//返回枚举成员的名称
public static《T extends Enum《T》》T valueOf(Class《T》enumType,String name)	//返回指定枚举类型和指定名称的枚举成员
ログイン後にコピー

java の例:

package java示例;
enum Direction{
	EAST("东"),SOUTH("南"),WEST("西"),NORTH("北");
	private String name;
	private Direction(String name) {
		this.name=name;
	}
	public String toString() {
		return name;
	}
}
public class 示例 {
	public static void main(String[] args) {
	    //public static<T extends Enum<T>>T valueOf(Class<T>enumType,String name)
	    //返回指定枚举类型和指定名称的枚举成员
		Direction dir=Enum.valueOf(Direction.class, "NORTH");
		System.out.println(dir);
		for(Direction d:Direction.values())
		//d.name()返回枚举常量的名称
		//d.toString()返回枚举成员的名称
			System.out.println(d.name()+"的属性是"+d.toString());
	}
}
运行结果:
北
EAST的属性是东
SOUTH的属性是南
WEST的属性是西
NORTH的属性是北
ログイン後にコピー
package Example;
enum Direction1
{
	EAST,SOUTH,WEST,NORTH
}
enum Direction2
{
	EAST,SOUTH,WEST,NORTH
}
public class Example5 {
	public static void main(String[] args)
	{
		Direction1 dir1=Direction1.WEST;
		Direction2 dir2=Direction2.NORTH;
		Direction1 dir3=Direction1.NORTH;
		System.out.println(dir1.compareTo(dir3));
		System.out.println(dir1.equals(dir2));
	}
}
运行结果:
-1
false
``
ログイン後にコピー

おすすめの関連記事とチュートリアル: javaクイック スタート

以上がJavaでのEnumクラスの共通メソッドの実装の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:csdn.net
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート