2d整数数组没有正常运行java android

时间:2013-07-20 05:29:32

标签: java arrays

我正在使用这样的数组:

int selIntIndex = Integer.valueOf(selStringIndex);

        int[][] PreIntVal = new int[][]


                {
                 { selIntIndex,
                        2 },
                 {
                        selIntIndex,
                        3 },
                 {
                        selIntIndex,
                        1 } };

        PreIntVal[3][0] = PreIntVal[4][0] = 3;

        android.util.Log.d("StripedLog",
                Arrays.toString(Values.PreStringVal[3]));

但不知何故,代码永远不会到达“log”语句。问题在于这一行:PreIntVal [3] [0] = PreIntVal [4] [0] = 3;因为如果我发表评论,那就有效了。

有什么建议吗?

1 个答案:

答案 0 :(得分:3)

此特定行PreIntVal[3][0] = PreIntVal[4][0]导致ArrayIndexOutOfBoundsException。查看已定义数组的维度:new int[][] { { selIntIndex, 2 }, { selIntIndex, 3 }, { selIntIndex, 1 } };。您似乎对如何使用 index 访问数组元素感到困惑,请浏览Oracle tutorial

此数组的有效索引是 [0,1,2] [0,1]

观察此图以了解索引的映射方式。

enter image description here