抱歉,这个问题可能很简单。
我需要一组标志
boolean[20] isTownVisited
但是里面用int不方便,我想用strings:
isTownVisited[Town.Milan] = true;
或
return isTownVisited[Town.Rome]
我试图声明枚举
enum Town {Milan, Rome, Florence, Napoli}
但我仍然不能用它来索引我的 boolean 数组。如何解决这个问题,我可以这样写吗:
enum Town {Milan = 0, Rome = 1, Florence = 2, Napoli = 3}
最佳答案
您可以使用 EnumSet。
Set<Town> towns = EnumSet.of(Town.Milan);
towns.add(Town.Rome);
return towns.contains(Town.Napoli);
在引擎盖下,EnumMap 和 EnumSet 使用 int ordinal();
EnumSet 使用位图。
关于java - 声明要在数组中使用的枚举?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6726888/