是否有可能在下列情況下使用枚舉:枚舉幫助/建議 - java的
比方說,你有一定的預定義的「讀類型」。示例讀取類型可以是:診斷,KWH,MaxDemand,OnPeak等。對於這些讀取類型中的每一種,都有一個'TIMTagNumber',它是一種用於檢索每種預定義讀取類型的協議。
例如,TIMTagNumber 1100將檢索讀取類型診斷 TIMTagNumber 1300將檢索讀取類型KWH。 問題是,預定義的讀取類型可能會被多個TIMTagNumber檢索到,其中有時會被檢索。
我想創建一個枚舉ReadType來定義每個讀取類型和所有可用於檢索讀取的TIMTagNumbers。 你可以用這種方式使用枚舉嗎?
public enum ReadType{
KWH(1300)
Diagnostic(1100)
ReadType3(1400, 1401) // This read can be retrieved by both 1400 and 1401
}
如果枚舉不是要走的路,有沒有一種優雅或有效的方法來定義這些讀取類型?所有這一切的總體預期結果都是在識別基於TIMTagNumbers的讀取類型。
I.E.鑑於1400或1401,你會知道它是'ReadType3'。
到目前爲止,這看起來不錯!我會試試看。但有一個問題,我對增強型for循環並不是很熟悉,尤其是在你使用它的方式上。 'values()'代表什麼以及它在哪裏定義? – TyC 2012-03-16 18:30:20
@TyC每個枚舉類型都有一個'values()'方法,返回枚舉值的有序數組,參見[documentation](http://docs.oracle.com/javase/1.5.0/docs/guide/language /enums.html)。 'for(x:y)'是'for(int i = 0; i' –
2012-03-16 18:34:27
@ jabu.10245謝謝。 – TyC 2012-03-16 19:10:48