Java中具有自定义值的枚举

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("手机列表:");

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

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

这将产生以下结果-

输出结果

手机列表:
Samsung costs 400 dollars
Nokia costs 250 dollars
Motorola costs 325 dollars
MobileName = Motorola
  • 在这里,我们showPrice()为枚举添加了价格作为字段和方法。

  • 我们已经使用其构造函数将自定义值分配给枚举。