2014-12-05 42 views
-1

我有這種枚舉類型方法,現在它爲每個選項返回一個顏色作爲int,但我希望每個選項都將一種顏色作爲int和一個字符串返回。下面是我,我會很感激一些幫助,所以,它也將返回一個字符串值:Android - 枚舉方法爲每個選項設置兩種數據類型

enum Direction { 
    NORHT(Color.RED), SOUTH(Color.YELLOW); 

    Direction(int c) { 
     color = c; 
    } 

    private int color; 

    public int getColor() { 
     return color; 
    } 
} 

所以,我怎麼可以編輯本也返回刺痛讓說:「天氣越來越冷了」北美和「變暖「向南?

它的這條線我有tourble與,不知道在哪裏添加字符串。

感謝您的幫助提前。

+3

只要按照已經存在的內容構建就可以了。向構造函數中添加一個字符串字段,一個字符串參數,將字符串傳遞給聲明值的構造函數,併爲其添加一個getter。就像當前的int一樣,但是一個字符串。 – 2014-12-05 04:12:19

回答

2

您需要簡單地向枚舉的構造函數中添加另一個參數,並在爲枚舉定義每個值時傳遞它。

enum Direction { 
     NORTH(Color.RED, "Getting Colder"), 
     SOUTH(Color.YELLOW, "Getting Warmer"); 

     Direction(int c, String m) { 
      color = c; 
      message = m; 
     } 

     private int color; 
     private String message; 

     public int getColor() { 
      return color; 
     } 

     public String getMessage(){ 
      return message; 
     } 
    } 
+0

很好,除了從這行刪除()以便它是正確的'return message();' – iqueqiorio 2014-12-05 04:16:13