今天天来说说java的枚举

所谓的常量就是不可改变的量。在java里面凡是被final关键字修饰的量,我们就称之为常量。常量式不可以改变的,变量式可以改变的,下面我们来看看一个程序。

首先我们来定义一个接口,我们知道接口里面的量都是静态的常量。还是来看看代码.

public interface Seasion {
   public static int SPRING=1;
   public static int Summer=2;
   public static int autuom=3;
   public static int WINTER=4;
}
定义了一个四季的接口,里面都是静态的常量。

下面我们来看看主程序的类.

public class Demo {
	public static void doit(int c) {
		switch (c) {
		case Seasion.SPRING:
			System.out.println("doit()春天");
			break;
		case Seasion.Summer:
			System.out.println("doit()夏天");
			break;
		case Seasion.autuom:
			System.out.println("doit()秋天");
			break;
		case Seasion.WINTER:
			System.out.println("doit()冬天");
			break;

		}
     public static void main(String[] args) {
		doit(Seasion.SPRING);
		doit(3);
		doit(100);
		doit2(Seasion2.SPRING);
		doit2(Seasion2.SUMMER);
	}
	}

我们可以看到写这么一个简单的 程序,使用普通的静态的常量代码非常的长。代码很简单,这里就不多介绍了。下面我们主要来看看枚举。首先我们定义一个枚举类,它的关键字就是enum.枚举类继承来自JAVA.lang.enum继承来自这个包.

枚举定义的量,不像普通的量那么麻烦,下面我们来看看如何定义一个枚举类.

public enum Seasion2 {
	//创建枚举类型2
  SPRING,SUMMER,AUTUOM,WINTER;
}

如上代码定义了一个枚举类 .枚举类的定义非常的简单,直接将枚举类型放在里面就可以了。我们在使用枚举类型来重写上面的代码。

public static void doit2(Seasion2 s) {
		switch (s) {
		case SPRING:
			System.out.println("doit2()春天");
			break;
		case SUMMER:
			System.out.println("doit2()夏天");
			break;
		case AUTUOM:
			System.out.println("doit2()秋天");
			break;
		case WINTER:
			System.out.println("doit2()冬天");
			break;
		}

  代码非常的简洁,最主要的式避免了风险,假如我们在上面的代码传入比4要大的数值的话,编辑器并不会报错,但是枚举

类型就是不一样了。主要你输出的不是枚举类型里面的常量,编辑器就会报错.

\

猜你喜欢

转载自blog.csdn.net/hackerbaseing/article/details/88919052