Java 中具有自定义值的枚举

java programming java8object oriented programming

Java 中的枚举表示一组命名常量。它还可以具有自定义属性和方法。

示例

让我们看一个例子。

import java.lang.*;

// 显示手机价格的枚举
enum Mobile {
   Samsung(400), Nokia(250),Motorola(325);

   int price;
   Mobile(int p) {
      price = p;
   }
   int showPrice() {
      return price;
   }
}

public class EnumDemo {
   public static void main(String args[]) {
      System.out.println("CellPhone List:");

      for(Mobile m : Mobile.values()) {
         System.out.println(m + " costs " + m.showPrice() + " dollars");
      }

      Mobile ret = Mobile.Motorola;
      System.out.println("MobileName = " + ret.name());
   }
}

这将产生以下结果 −

输出

CellPhone List:
Samsung costs 400 dollars
Nokia costs 250 dollars
Motorola costs 325 dollars
MobileName = Motorola
  • 这里我们向枚举添加了 price 作为字段,并添加了 showPrice() 作为方法。

  • 我们使用枚举的构造函数为其分配了自定义值。


相关文章