Home  >  Article  >  Java  >  Implementation of common methods of Enum class in java

Implementation of common methods of Enum class in java

王林
王林forward
2020-02-14 18:05:092051browse

Implementation of common methods of Enum class in java

Predefined methods of enumeration types:

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

java example:

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

Since all enumeration classes inherit java .lang,Enum, this class defines public methods of enumeration for users to use. Since the Enum class implements two interfaces, java.lang.Comoarable and java.lang.Serializable, enumeration types can use comparators and traversal operations.

(Related learning video sharing: java video tutorial)

The following are common methods of the Enum class:

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 example:

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
``

Recommended related articles and tutorials: javaQuick Start

The above is the detailed content of Implementation of common methods of Enum class in java. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:csdn.net. If there is any infringement, please contact admin@php.cn delete