Я делаю программу бинго. В настоящее время я просто хочу, чтобы 2D-массив представлял числа на бинго-карте. Колонка 1 может содержать только 1-15 Колонка 2 16-30 Колонка 3 31-45 и т.д ....Я иногда получаю ошибки, а иногда нет?
Это мой код до сих пор, и иногда он вызывает исключение, но иногда это не что странно.
private int[][] bingoCard = new int [5][5];
public BingoCard()
{
int [][]bingoCardInit = new int [5][5];
bingoCard = bingoCardInit;
}
public void fillInCard()
{
int arrayIndex = 0;
Integer[] arr = new Integer[16];
for (int i = 1; i <= 15; i++)
{
arr[i] = i;
}
Collections.shuffle(Arrays.asList(arr));
for(int rowIndex = 0; rowIndex<5; rowIndex++)
{
bingoCard[0][rowIndex] = arr[rowIndex];
System.out.println(bingoCard[0][rowIndex]);
}
Integer[] arr1 = new Integer[16];
for (int i = 16; i <= 30; i++)
{
arr1 [arrayIndex]= i;
arrayIndex++;
}
Collections.shuffle(Arrays.asList(arr1));
arrayIndex = 0;
for(int rowIndex = 0; rowIndex<5; rowIndex++)
{
bingoCard[1][arrayIndex] = arr1[rowIndex];
System.out.println(bingoCard[1][arrayIndex]);
arrayIndex++;
}
arrayIndex = 0;
Integer[] arr2 = new Integer[16];
for (int i = 31; i <= 45; i++)
{
arr2 [arrayIndex]= i;
arrayIndex++;
}
Collections.shuffle(Arrays.asList(arr2));
arrayIndex = 0;
for(int rowIndex = 0; rowIndex<5; rowIndex++)
{
bingoCard[2][arrayIndex] = arr2[rowIndex];
System.out.println(bingoCard[2][arrayIndex]);
arrayIndex++;
}
arrayIndex = 0;
Integer[] arr3 = new Integer[16];
for (int i = 46; i <= 60; i++)
{
arr3 [arrayIndex]= i;
arrayIndex++;
}
Collections.shuffle(Arrays.asList(arr3));
arrayIndex = 0;
for(int rowIndex = 0; rowIndex<5; rowIndex++)
{
bingoCard[3][arrayIndex] = arr3[rowIndex];
System.out.println(bingoCard[3][arrayIndex]);
arrayIndex++;
}
}
Мне просто интересно, почему это иногда вызывает исключение.
Можете ли вы опубликовать трассировку стека? –
Исключение в потоке «основного» java.lang.NullPointerException \t на BingoCard.fillInCard (BingoCard.java:37) \t в BingoCard.main (BingoCard.java:78) но иногда изменяется на исключение в потоке «Основной "java.lang.NullPointerException \t в BingoCard.fillInCard (BingoCard.java:23) \t в BingoCard.main (BingoCard.java:78) и разные номера по какой-то причине – Herofire
вы можете указать эти строки в своем коде ? –