我想初始化一个多维私有静态最终整数数组,索引值。
private static final int[][] a = { {0,0,0}, {1,2,3} };
这对我不好。我在某个地方发现了我尝试过的这种奇怪的语法,但无论如何都不想编译。我添加它以澄清我需要什么:
private static final int[][] a;
private static {
a = new int[NUM_TYPES][3];
a [TYPE_EMPTY] = { 0, 0, 0 };
a [TYPE_NORMAL] = { 1, 2, 3 };
};
不同的是现在我应该有一个[TYPE_EMPTY] 和a[TYPE_NORMAL] 而不是a[0] 和a[1]。在实际方面它是相同的,但第二个使源代码更加清晰、无错误和可维护。
例如,如果我将来添加一个新的 TYPE,我不需要关心数组中的数字索引。
正如我所说,我没有找到任何正确的语法来做到这一点,上面的语法是完全错误的。一些Java专家会给我一个简短的教训吗?:) 非常感谢你。