В настоящее время я пытаюсь создать карточную игру в формате java, но у меня проблемы с настройкой карты. Я беру значения, такие как 2H 3D 4S 5C 6H
в основной функции. Я пытаюсь поместить эти значения в свой класс карты, но когда я пытаюсь установить свой ранг, я получаю ошибку nullpointerexception.Установка значения в классах Java. Null Pointer Exception
Я новичок в программировании на Java и не могу понять, почему это происходит. Какие-либо предложения? Мне не разрешено создавать массивы карт?
public class Game {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int T = sc.nextInt();
String[] player1arr = new String[5];
String[] player2arr = new String[5];
Card[] player1 = new Card[5];
Card[] player2 = new Card[5];
for(int i = 0; i < 5; i++){
player1arr[i] = sc.next();
char first = player1arr[i].charAt(0);
int rank = Character.getNumericValue(first); //error
player1[i].setRank(rank);
}
for(int i = 0; i < 5; i++){
player2arr[i] = sc.next();
System.out.println(player2arr[i]);
}
}
}
class Card{
private int rank;
private char suit;
public int getRank(){
return rank;
}
public void setRank(int r){
rank = r;
}
}
Просим сообщить об ошибке. Кроме того, вы не создаете экземпляры карт в своем массиве. Вы просто выделяете память для самого массива, но с объектами нулевой карты. – Laerte