因此,如果我們有一個像枚舉:枚舉時間問題
public enum light { red, yellow, green }
會是什麼時間?難道光線不是某種顏色?
像
int duration = ligt.red = 1
或類似的東西?
因此,如果我們有一個像枚舉:枚舉時間問題
public enum light { red, yellow, green }
會是什麼時間?難道光線不是某種顏色?
像
int duration = ligt.red = 1
或類似的東西?
聲明的枚舉是這樣的:
public enum Light {
RED(1),
YELLOW(2),
GREEN(3);
private final int duration;
Light(int duration) {
this.duration = duration;
}
public int getDuration() {
return this.duration;
}
}
然後你可以使用它像這樣:
public class Test {
public static void main(String... args) {
Light light = Light.RED;
System.out.println("Duration of RED is: " + light.getDuration());
}
}
編輯:基於史蒂夫郭的建議下,可變duration
已作出終審判決。
Adarshr的答案假定持續時間是光的顏色屬性。如果它是一組特定信號的顏色屬性,則可以使用EnumMap<light, Integer>
。
class Signal {
private EnumMap<light, Integer> durations = new EnumMap<light, Integer>(light.class);
Signal() {
this.durations.put(light.red, 3);
....
}
}
你能描述一下你想表示的數據,而不是你想表示的結構嗎?如果您告訴我們關於數據/任務的更多信息,我們可能會更好地協助您。 – 2011-03-07 22:58:49
很難弄清楚你究竟在問什麼 - 你沒有給出任何關於問題的背景,所以我們不知道什麼時間*應該比你多。 – 2011-03-07 22:59:32