您的当前位置:首页正文

枚举(enum)及应用

2024-04-21 来源:帮我找美食网

Java枚举是一个特殊的类,一般表示一组常量。每个常量用逗号隔开。

1、枚举的定义

例如:定义一个星期的枚举:(枚举中的个量都是常量因此用大写字母)

枚举:

public enum  Week {
    SUN,MON,TUES,WED,THUR,FRI,SAT
}

测试代码:

public class Test {
    public static void main(String[] args) {
        Week w1=Week.SUN;
        Week w2=Week.MON;
        Week w3=Week.TUES;
        Week w4=Week.WED;
        Week w5=Week.THUR;
        Week w6=Week.FRI;
        Week w7=Week.SAT;
        System.out.println(w1+"\n"+w2+"\n"+w3+"\n"
                +w4+"\n"+w5+"\n"+w6);
    }
}

运行结果

2、内部类中使用枚举

public class Test2 {
    enum Week{
        SUN,MON,TUES,WED,THUR,FRI,SAT
    }
    public static void main(String[] args) {
        Week w1=Week.SUN;
        Week w2=Week.MON;
        Week w3=Week.TUES;
        Week w4=Week.WED;
        Week w5=Week.THUR;
        Week w6=Week.FRI;
        Week w7=Week.SAT;
        System.out.println(w1+"\n"+w2+"\n"+w3+"\n"
                +w4+"\n"+w5+"\n"+w6);
    }
}

运行结果:

SUN
MON
TUES
WED
THUR
FRI

每个枚举都是通过class在内部类实现的,且所有的枚举都是公共静态常量。

2、枚举的迭代

使用增强for迭代:

public class Test2 {
    enum Week{
        SUN,MON,TUES,WED,THUR,FRI,SAT
    }
    public static void main(String[] args) {
       for (Week week:Week.values()){//增强for
           System.out.println(week);
       }
    }
}

运行结果:

SUN
MON
TUES
WED
THUR
FRI
SAT
 

3、switch中应用枚举

import java.util.Scanner;

public class Test2 {
    enum Week{
        SUN,MON,TUES,WED,THUR,FRI,SAT
    }
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        System.out.print("请输入你喜欢的日期:");
        String s=input.next();
        Week w=Week.valueOf(s);
        switch (w){
            case SUN:
                System.out.println("你喜欢星期日");
                break;
            case MON:
                System.out.println("你喜欢星期一");
                break;
            case TUES:
                System.out.println("你喜欢星期二");
                break;
            case WED:
                System.out.println("你喜欢星期三");
                break;
            case THUR:
                System.out.println("你喜欢星期四");
                break;
            case FRI:
                System.out.println("你喜欢星期五");
                break;
            case SAT:
                System.out.println("你喜欢星期六");
                break;
        }
    }
}

运行结果:

请输入你喜欢的日期:WED
你喜欢星期三

因篇幅问题不能全部显示,请点此查看更多更全内容

热门图文

Top