首頁  >  文章  >  Java  >  java中Enum類別的常用方法實現

java中Enum類別的常用方法實現

王林
王林轉載
2020-02-14 18:05:092043瀏覽

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兩個接口,所以枚舉類型是可以使用比較器和遍歷操作的。

(相關學習影片分享: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中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除