NullPointerException

2 respostas
R

Bom dia galera, (sou iniciante em Java) to com um problema que já tentei de tudo mas não consigo localizar o erro,não sei se expliquei bem,mas vamos ao código e eu tento explicar.

public class Carta 
{
    int numero;
    boolean cor;
    int naipe;
}
class Baralho
{
    Carta[] cartas;
    
    Baralho()
    {
        cartas = new Carta[52];
    }
    public static void main(String args[])
    {
        Baralho b = new Baralho();
        
        for(int i = 0; i < 52; i++)
        {
            b.cartas[i].naipe = i%4;
        }
    }
}

Exception in thread "main" java.lang.NullPointerException
at P1.Baralho.main(Carta.java:21)
Java Result: 1

2 Respostas

R

quando vc faz isso,

cartas = new Carta[52];

vc ta criando um Objeto array. Porém, não há nenhum Objeto do tipo Carta estanciado. Faça assim:

b.cartas[i] = new Carta();
b.cartas[i].naipe = i%4;
R

Perfeito cara,muito obrigado!

Criado 13 de agosto de 2014
Ultima resposta 13 de ago. de 2014
Respostas 2
Participantes 2