2013-03-03 55 views
3

如果在枚舉中有一個枚舉, DaySunDay,MunDay等。有沒有一種簡單的方法來生成switch聲明如下?人手非常多。如何使用枚舉生成switch語句框架

switch(day) { 

    case SunDay : 
      break; 

    case MunDay : 
      break; 

    // and so on 
} 
+3

該代碼應該工作。那麼究竟是什麼問題呢? – 2013-03-03 22:16:15

+3

你是什麼意思的「生成」? – BloodShura 2013-03-03 22:16:30

+1

http://docs.oracle.com/javase/tutorial/java/javaOO/enum.html – Maroun 2013-03-03 22:17:21

回答

9

如果您使用的是Eclipse IDE,你可以構造一個空的開關,和Eclipse會給你打電話「添加缺少的case語句」自動生成開關的選項。請參見下面的IMAGEM:

(在另一個窗口中打開圖像看得更清楚。)

enter image description here

+0

我只想要一些枚舉,例如一年中的幾個月。 – javaguy 2013-03-09 21:37:17

2

像這樣的東西應該工作

public class DaySwitchGenerator { 
    public static void main(String...args) { 
     System.out.println("switch(day) {"); 

     for (Day e : Day.values()) { 
      System.out.println(" case " + e.name() + " :"); 
      System.out.println("  break;"); 
     } 

     System.out.println("}"); 
    } 
}