我正在尝试获得类似类型的随机枚举。例如,我有枚举TRACK_PLAY_1
,TRACK_PLAY_2
,TRACK_PAUSE_1
。我希望得到一个随机的TRACK_PLAY
枚举。
我目前正在使用EnumSets对Enums进行分类。例如来自TRACK_PLAY
的{{1}}。
这是我到目前为止所拥有的:
TRACK_PAUSE
我希望能够通过以下内容获取枚举:package com.TobyMellor.smash.core;
import java.util.EnumSet;
public enum SoundEffect {
SMASH_1("smash_1"),
SMASH_2("smash_2"),
SMASH_3("smash_3"),
TRACK_PAUSED_1("track_paused_1"),
TRACK_PAUSED_2("track_paused_2"),
TRACK_PAUSED_3("track_paused_3"),
TRACK_PAUSED_4("track_paused_4"),
TRACK_PAUSED_5("track_paused_5"),
TRACK_PAUSED_6("track_paused_6"),
TRACK_PLAY_1("track_play_1"),
TRACK_PLAY_2("track_play_2"),
TRACK_PLAY_3("track_play_3"),
TRACK_PLAY_4("track_play_4"),
TRACK_SKIPPED_1("track_skipped_1"),
TRACK_SKIPPED_2("track_skipped_2"),
TRACK_SKIPPED_3("track_skipped_3"),
TRACK_SKIPPED_4("track_skipped_4"),
TRACK_SKIPPED_5("track_skipped_5");
public static EnumSet<SoundEffect> SMASH = EnumSet.of(SMASH_1, SMASH_2, SMASH_3);
public static EnumSet<SoundEffect> TRACK_PAUSED = EnumSet.of(TRACK_PAUSED_1, TRACK_PAUSED_2, TRACK_PAUSED_3, TRACK_PAUSED_4, TRACK_PAUSED_5, TRACK_PAUSED_6);
public static EnumSet<SoundEffect> TRACK_PLAY = EnumSet.of(TRACK_PLAY_1, TRACK_PLAY_2, TRACK_PLAY_3, TRACK_PLAY_4);
public static EnumSet<SoundEffect> TRACK_SKIPPED = EnumSet.of(TRACK_SKIPPED_1, TRACK_SKIPPED_2, TRACK_SKIPPED_3, TRACK_SKIPPED_4, TRACK_SKIPPED_5);
private final String testSound;
SoundEffect(String bukkitSound) { this.testSound = testSound; }
public String getTestSound() { return testSound; }
}
这将返回我的SOUNDEFFECT.TRACK_PLAY[randomInt]
。
非常感谢任何帮助。
谢谢!
托比。