>  기사  >  Java  >  Java에서 열거형을 사용하는 방법

Java에서 열거형을 사용하는 방법

WBOY
WBOY앞으로
2023-04-20 11:49:061141검색

    열거(enum)

    열거는 식별자가 있는 상수 집합을 선언하는 데 사용되는 명명된 정수 상수의 모음입니다. 예를 들어, 사람의 성별은 "남성" 또는 "여성"만 될 수 있고, 주는 7일 중 하나만 될 수 있습니다. 이처럼 변수에 여러 개의 고정 가능한 값이 있을 경우 열거형으로 정의할 수 있습니다.

    Java 열거 클래스는 enum 키워드를 사용하여 정의되며 각 상수는 쉼표로 구분되며 끝에 세미콜론이 사용됩니다.

    Java에서 열거형을 사용하는 방법

    시즌에 대한 열거 클래스를 정의합니다

    enum Season{
        spring,summer,autumn,winter;
    //   常量有 spring, summer, autumn,winter,分别表示春天,夏天,秋天,冬天,系统会自动添加 public static final 修饰
    }
    enum Season{
        spring,summer,autumn,winter;
    //   常量有 spring, summer, autumn,winter,分别表示春天,夏天,秋天,冬天,系统会自动添加 public static final 修饰
    }
     
     
    public class SeasonEnum {
     
        public static void main(String[] args) {
     
     
            System.out.println("请输入季节"+"\n"+"1、春天"+"\n"+"2、夏天"+"\n"+"3、秋天"+"\n"+"4、冬天");
            Scanner scan =new Scanner(System.in);
            int seasons= scan.nextInt();
            change(seasons);
        }
     
        private static void change(int seasons) {
            Season season=Season.spring;
            switch (seasons){
                case 1:
                    season=Season.spring;
     
                    break;
                case 2:
                    season=Season.summer;
                    break;
                case 3:
                    season=Season.autumn;
                    break;
                case 4:
                    season=Season.winter;
                    break;
            }
            System.out.println(season);
        }
    }

    열거 클래스

    enum 정의됨 열거 클래스는 기본적으로 java.lang.Enum 클래스를 상속하고 java.lang.Serialized 및 java.lang.Comparable 두 인터페이스를 구현합니다.

    values(), ordinal() 및 valueOf() 메소드는 java.lang.Enum 클래스에 있습니다.

    • values()는 열거 클래스의 모든 값을 반환합니다.

    • ordinal() 메소드는 배열 인덱스와 마찬가지로 각 열거형 상수의 인덱스를 찾을 수 있습니다.

    • valueOf() 메서드는 지정된 문자열 값의 열거 상수를 반환합니다.

    values() 메서드

    values( ) 메서드는 열거형의 모든 멤버를 배열 형식으로 반환할 수 있으며, 이 메서드를 통해 열거형 형식의 멤버를 가져올 수도 있습니다. values( ) 方法可以将枚举的所有成员以数组形式返回,也可以通过该方法获取枚举类型的成员。

    enum Season{
        spring,summer,autumn,winter;
    //   常量有 spring, summer, autumn,winter,分别表示春天,夏天,秋天,冬天,系统会自动添加 public static final 修饰
    }
     
    }
     
     
    public class SeasonEnum {
       public static void main(String[] args) {
    //        迭代季节
            for (Season season : Season.values()) {
                System.out.println(season);
            }
       }
    }

    结果:

    Java에서 열거형을 사용하는 방법

    ordinal()方法

     ordinal() 方法

    enum Season{
        spring,summer,autumn,winter;
    //   常量有 spring, summer, autumn,winter,分别表示春天,夏天,秋天,冬天,系统会自动添加 public static final 修饰
    }
     
    }
     
     
    public class SeasonEnum {
       public static void main(String[] args) {
    //        迭代季节
            for (Season season : Season.values()) {
    //            ordinal可以找到每个枚举常量的索引,就像数组索引一样。
                System.out.println(season+"  索引为  "+season.ordinal());
            }
       }
    }

    결과:

    Java에서 열거형을 사용하는 방법

    Java에서 열거형을 사용하는 방법ordinal() method

    ordinal() 메소드는 열거형에서 멤버의 인덱스 위치를 얻을 수 있습니다. 다음 예제에서는 3개의 멤버를 포함하는 열거형 Signal을 만든 다음 ordinal() 메서드를 호출하여 멤버와 해당 인덱스 위치를 출력합니다.

    R
    enum Season{
        spring,summer,autumn,winter;
    //   常量有 spring, summer, autumn,winter,分别表示春天,夏天,秋天,冬天,系统会自动添加 public static final 修饰
    }
     
    }
     
     
    public class SeasonEnum {
       public static void main(String[] args) {
     
    //        使用 valueOf() 返回枚举常量,不存在的会报错 IllegalArgumentException
             System.out.println(Season.valueOf("summer"));
       //    System.out.println(Season.valueOf("summ"));
       }
    }
    ATERSULT :

    Java에서 열거형을 사용하는 방법 valueOf () method

    Valueof () 메소드 지정된 문자열 값의 열거 상수를 반환합니다. 일반 클래스는 자체 변수, 메서드 및 생성자를 사용할 수도 있습니다. 생성자는 전용 액세스 수정자만 사용할 수 있으므로 외부에서 호출할 수 없습니다.

    열거에는 구체적 메소드와 추상 메소드가 모두 포함될 수 있습니다. 열거형 클래스에 추상 메서드가 있는 경우 열거형 클래스의 모든 인스턴스는 이를 구현해야 합니다.

    아아아아

    위 내용은 Java에서 열거형을 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

    성명:
    이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제