嗨,我想创建一个数组,其中每个位置由枚举的值表示.
例如:
public enum type{
green,blue,black,gray;
}
Run Code Online (Sandbox Code Playgroud)
现在我想创建一个阵列,其中每个位置都是绿色,蓝色,......
我会更清楚.我想创建一个数组,其中位置由enum class.instead int []数组表示.[=] int []创建int [] array = new int [type.value]
是的type[] allValues = type.values().看到这个问题.
或者你可以使用EnumSet:
EnumSet<type> types = EnumSet.allOf(type.class);
Run Code Online (Sandbox Code Playgroud)
它为您提供了Set充满您的枚举值的高性能实现.
PS:您应该以大字母(CamelCase)开头命名enum类.
编辑:
似乎你想要你的emum值的序数位置数组(为什么现在有人会使用数组而不是正确的数据集?):
type[] colors = type.values();
List<Integer> list = new ArrayList<Integer>(colors.length);
for (type color : colors) {
list.add(color.ordinal());
}
Integer[] array = list.toArray(new Integer[0]);
Run Code Online (Sandbox Code Playgroud)
编辑2:也许你想要Map<Integer, type>键和值0 => green, 1 => blue, 2 => black, 3=> gray(问题仍然不明确)?
| 归档时间: |
|
| 查看次数: |
17356 次 |
| 最近记录: |