Цель этого проекта - создать хост-программу, управляющую игрой в бинго. В каждом раунде игры может присутствовать несколько игроков. В раунде игры у игрока может быть любое количество карт Бинго. Мне нужно создать разные классы, которые будут использоваться в моем основном методе. Сейчас я работаю над своим классом чисел Бинго, и цель этого - получить номер Бинго, который может быть помечен игроком. Я продолжаю получать int не может быть разыменованной ошибки. Вот мой код:
public class BingoNumber
{
private int number;
private boolean [][] mark;
private int [][] card;
//Constructor constructs an object of type BingoNumber
public BingoNumber(int aNumber)
{
card = new int [5][5];
for(int r = 0; r < 5; r++)
for(int c = 0; c < 5; c++)
card[r][c]=(int)(Math.random()*75+1);
mark = new boolean [5] [5];
for(int r = 0; r < 5; r++)
for(int c = 0; c < 5; c++)
mark[r][c] = false;
number = aNumber;
}
//returns the integer representing the number of the BingoNumber.
public int getNumber()
{
return number;
}
//returns true or false whether the number is marked
public boolean isMarked()
{
for(int r = 0; r < 5; r++)
for(int c = 0; c < 5; c++)
if(card[r][c] == number)
{
mark[r][c] = true;
return mark[r][c];
}
else
return mark[r][c];
}
/*returns a two-digit string presentation of a BingoNumber.
The output string depends on whether the number is marked.
If the number is not marked yet, shows the number.
If the number is marked, the output string will XX. **/
public String toString()
{
StringBuilder s = new StringBuilder ();
s.append(number);
//getting int cannot be dereferenced
s.append("XX" + number.isMarked());
return s.toString();
}
/*Returns a two-digit string representation of a BingoNumber
as if it has not been marked yet.*/
public String toNumberString()
{
StringBuilder s = new StringBuilder ();
s.append(number);
}
//Notes that once the number is marked it cannot be unmarked.
/*Later in a future class there will be method that will
let users unmark a Bingo number.*/
public void mark()
{
for (int i = 0; i < card.length; i++)
//int cannot be dereferenced
card[i][i].isMarked(number);
}
}