java.lang.Enum.valueOf()方法範例


java.lang.Enum.valueOf() 方法返回指定名稱enumtype的列舉常數。該名稱必須用於宣告在此型別的列舉常數的識別符號完全匹配。

宣告

以下是java.lang.Enum.valueOf()方法的宣告

public static <T extends Enum<T>> T valueOf(Class<T> enumType, String name)

引數

  • enumType -- 這是列舉型別,返回一個常數的類的物件。

  • name -- 這是常數,要返回的名稱。

返回值

此方法返回具有指定名稱的列舉型別的列舉常數。

異常

  • IllegalArgumentException -- 如果指定的列舉型別沒有常數指定名稱,或指定的類物件不表示列舉型別。

  • NullPointerException -- 如果 enumType 或 name 為 null.

例子

下面的例子顯示java.lang.Enum.valueOf()方法的使用。

package com.yiibai;

import java.lang.*;

// enum showing Mobile prices
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;
     ret = Mobile.valueOf("Samsung"); 
     System.out.println("Selected : " + ret);                              
   }
} 

讓我們來編譯和執行上面的程式,這將產生以下結果:

CellPhone List:
Samsung costs 400 dollars
Nokia costs 250 dollars
Motorola costs 325 dollars
Selected : Samsung