Java中枚举及其构造函数

一、最简单的枚举

public enum Season{ Spring,Summer,Fall,Winter};

二、带构造器的枚举

如下:EOrderType就是枚举的构造函数

例如NormalOrder(0, "一般订单") 第一个0对于构造函数的type,第二个参数对应构造函数的desc

getOrderType

注意:1、需要在枚举实例后面加上分号,然后再写构造函数等

            2、枚举实例必须在前面

            3、定义枚举的构造器方法带参,只能为private 

public enum EOrderTyper {
	  /**
     * 无效的订单类型
     */
	Invalid(-1,"无效的订单类型"),
	
	/**
	 * 一般订单
	 */
	NormalOrder(0, "一般订单"),
	
	/**
	 * 虚拟礼品卡订单
	 */
	VDDmoney(50, "虚拟订单"),
	
	/**
	 * 实物礼品卡订单
	 */
	PDDmoney(51, "礼品卡订单");
	private int orderType;
	private String description;
	private EOrderTyper(int type, String desc) {
		this.orderType = type;
		this.description = desc;
	}


	public int getOrderType() {
		return this.orderType;
	}


	public String getDescription() {
		return this.description;
	}
	
}

三、EnumSET

可以用来创建枚举集合,例如:

public static EnumSet<EPriceType> getSetTypes(){
      EnumSet<EPriceType> set=EnumSet.noneOf(EPriceType.class);  
      set.addAll(EnumSet.complementOf(set));  
      return set;
    }


  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当我们需要在代码表示一组固定的值时,可以使用Java的枚类。枚类是一种特殊的类,用于定义一组有限的常量。它提供了更好的可读性和类型安全性。 以下是创建和使用枚类的步骤: 1. 定义枚类:使用关键字`enum`来定义一个枚类,后面跟着枚类的名称。 ```java enum Day { MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY } ``` 2. 声明枚实例:在枚定义的常量被称为枚实例。它们通常以大写字母表示,并以逗号分隔。 3. 使用枚实例:可以像使用其他类型的变量一样使用枚实例。例如,通过将枚实例赋值给变量,或者作为方法的参数或返回值。 ```java Day today = Day.MONDAY; System.out.println("Today is " + today); ``` 4. 枚方法:枚类可以包含方法和构造函数。可以为枚实例添加自定义方法,并在枚定义其他行为。 ```java enum Day { MONDAY("Monday", 1), TUESDAY("Tuesday", 2), // ... private String name; private int value; private Day(String name, int value) { this.name = name; this.value = value; } public String getName() { return name; } public int getValue() { return value; } } ``` 在上面的示例,我们为每个枚实例添加了名称和值,并定义了构造函数和方法来获取它们的值。 枚类的优点包括: - 类型安全性:只能使用枚实例定义的值,不允许使用任意其他值。 - 可读性:枚实例以清晰的方式表示,使代码更易于理解和维护。 - 扩展性:可以为枚实例添加新的属性和行为。 希望这个详细解释能帮助你理解Java的枚类及其使用方法。如果你还有其他问题,请随时提问!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值