> Java > Java시작하기 > Java에서 Enum 클래스의 일반적인 메소드 구현

Java에서 Enum 클래스의 일반적인 메소드 구현

王林
풀어 주다: 2020-02-14 18:05:09
앞으로
2103명이 탐색했습니다.

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.Serialized의 두 가지 인터페이스를 구현하므로 열거 유형은 비교기와 순회 작업을 사용할 수 있습니다.

(관련 학습 동영상 공유: 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 Quick start

위 내용은 Java에서 Enum 클래스의 일반적인 메소드 구현의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:csdn.net
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿