[Resolvido]Problemas com declaração de array

6 respostas
O

Estou desenvolvendo um código para gerar um campo para o jogo de campo minado.

Meus problemas começam ao tentar atribuir valores ao meu array bidimensional na seguinte situação:

import java.lang.System;
public class ArrayRandomize
{
   
    private int[][] matriz;
    private int i;
    private int j;
    private int contBombas;

    
    public ArrayRandomize()
    {
        int[][] matriz = new int[8][8];
    }
      
    public void RandomMatriz(int numBombas)
    {
        for (i=0; i<9; i++)
        {
            for (j=0; j<9; j++)
            { 
                matriz[i][j] = 1 - (int)(Math.random() * 2);
                
                if (matriz[i][j] == -1 && contBombas < 11)
                {
                    contBombas = contBombas++;
                }
                if (matriz[i][j] == -1 && contBombas > 10)
                    matriz[i][j] = 0;
            }
        }
    }
    
    public void ImprimeMatriz()
    {
        for (i=0; i<8; i++)
        {
            for (j=0; j<8; j++)
            {
                System.out.println(matriz[i][j]+" ");
            }
            System.out.println("\n");
        }
    }
}

O problema ocorre na linha 22, que acusa java.lang.NullPointerException: null.

O motivo de eu ter empacado nisso é porque, pra mim, isso tá certo. Não tenho nem ideia do que eu posso fazer a respeito.

Desde já agradeço pela ajuda.

Abraço.

6 Respostas

xandevieira

é q vc esta usando na linha 22 a matriz “global”, no construtor vc criou um novo, provavelmente esta é sua duvida.

O

Me desculpe, mas eu não entendi sua sugestão.

O que quer dizer com matriz “global”?

xandevieira

na linha 5 vc esta declarando a matriz (global), na linha 11 vc esta criando uma outra matriz e inicializando ela.
o correto seria vc fazer assim:

public ArrayRandomize() {
matriz = new int[8][8];
}

note, sem int[][] na frente

O

Putz, eu sou muito burro kkk

Funcionou agora. Muito obrigado mesmo! :smiley:

xandevieira

Coloca no titulo [Resolvido]

O

Pronto, coloquei o [Resolvido]. :smiley:

Criado 27 de outubro de 2011
Ultima resposta 28 de out. de 2011
Respostas 6
Participantes 2