Every time I increment the below to update the created by my method, I get a Exception in thread "main" java.lang.NullPointerException error. I have no clue what's causing this, perhaps it's the "do" loop? I've tried everything I can and am not aiming to import any packages
userCardsCount = 2;
boolean trueScore = userSum <= 21;
do{
displayCards(true);
// User turn
int i = 2;
System.out.println("\nUSER'S TURN");
System.out.print("Draw new card (Y/N): ");
input = br.readLine();
if(input.equals("y") || input.equals("Y") || input.equals("yes") || input.equals("YES")) {
userCardsCount++;
userCards[i] = deck.drawCard();
userSum += userCards[i].value;
System.out.print("\n--> User drew a " + "[" + userCards[i].value + "]\n");
//i++;
} else if(input.equals("n") || input.equals("N") || input.equals("no") || input.equals("NO")) {
// You stay as you are and go to the computer's turn
System.out.println("--> User stays.");
}
else {
System.out.println("\t--> Umm please retry input");
}
} while(trueScore);
METHOD
public static void displayCards(boolean showHidden)
{
if(showHidden) {
System.out.print("Computer's cards: [" + computerCards[0].name + "]");
} else {
System.out.print("Computer's cards: [X]");
}
for(int i = 1; i < computerCardsCount; i++) {
System.out.print("[" + computerCards[i].name + "]");
}
if(showHidden) {
System.out.print(" (sum: " + computerSum + ")");
}
System.out.print("\nUser's cards: ");
for(int i = 0; i < userCardsCount; i++) {
System.out.print("[" + userCards[i].name + "]");
}
System.out.print(" (sum: " + userSum + ")");
System.out.print("\n");
}
Any suggestions?