Класс бинго: получение ошибок - PullRequest
0 голосов
/ 07 марта 2019

Цель этого проекта - создать хост-программу, управляющую игрой в бинго. В каждом раунде игры может присутствовать несколько игроков. В раунде игры у игрока может быть любое количество карт Бинго. Мне нужно создать разные классы, которые будут использоваться в моем основном методе. Сейчас я работаю над своим классом чисел Бинго, и цель этого - получить номер Бинго, который может быть помечен игроком. Я продолжаю получать 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); 
}

}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...