我一直在获取NullPointerException(请参见下文)。在C#中一切正常,但是在android中会坏吗?
arrDBNumbers已满,应该执行代码并计算#1,#2,#3的数量,依此类推,直到#49,将arrFreq [i] [1]加1以将数字的总数填充到arrFreq。
它遍历if语句,直到k到达6,其中arrDBNumbers [0] [6]为1,然后在if语句内跳转然后中断?我不确定这是怎么回事,请多多指教。
Integer[][] arrDBNumbers = new Integer[100][8]; Integer[][] arrFreq = new Integer[49][2]; for (int i = 0; i < 49; i++){ for (int j = 0; j < 49; j++){ for (int k = 1; k < 7; k++){ if (arrDBNumbers[j][k] == (i + 1)){ arrFreq[i][1]++; // < here is where I get Exception? } } } }
因为只是写作
Integer[][] arrFreq = new Integer[49][2];
表示您已经使用所有null元素初始化了该数组,因为它是一个IntegerObjects 数组,并且Object的默认值为null引用。 因此,
null
Integer
arrFreq[i][1]++; // trying null++;
给NullPointerException。
NullPointerException
如果您使用的 是原始数组,则默认情况下为 s 数组, 情况并非如此 。 0
0
int[][] arrFreq = new int[49][2];