0
public void aleatorios2 (  ) {
    direc = new int[ modelo.getRowCount() ];
    arre = new String[ 50 ];

    System.out.println("Arre → " + arre.length );
    for (int r = 0; r < direc.length; r++) {
        aucs = a.nextInt(39);
        aucs += 5;

        System.out.println("aucs → " + aucs);
        System.out.println("Arre → " + arre.length );
        if ( valorRep(arre, String.valueOf( (char) (proc + 65) ) ) == false ) {

            int aucx = Integer.parseInt( modDat.getValueAt( r, 2 ).toString() );
            System.out.println("Arre → " + arre.length );
            for (int rx = 0; rx < arre.length; rx++) {
                for (int rr = 0; rr < aucx ; rr++) {
                    int dir = aucs + rr;
                    System.out.println("Arre → " + arre.length );
                    if ( arre[ dir ].compareTo("") == 0 ) {
                    System.out.println("Arre → " + arre.length );
                        bandAux = true;
                        break;
                    }
                }
                break;
            }

            if ( bandAux ) {
                direc [ r ] = aucs;
                for (int rr = 0; rr < aucx; rr++) {
                    arre [ aucs + rr ] = String.valueOf( (char) (proc + 65) );
                }
            } else {
                r--;
            }


        } else {
            r--;
        }

    }

    for (int r = 0; r < modDat.getRowCount(); r++) {
        modDat.setValueAt(direc[r], r, 1);
    }


}

Me lo marca dentro de este if

if ( arre[ dir ].compareTo("") == 0 ) {
                System.out.println("Arre → " + arre.length );
                    bandAux = true;
                    break;
                }

Mensaje de la salida

JarhChuy
  • 51
  • 2
  • 9

1 Answers1

4
arre = new String[ 50 ];

Esto no te crea un array con 50 instancias de String, te crea un array de 50 referencias a String.

Pero cada una de esas referencias (arre[0], arre[1]....) se inicializan a null y así se quedarán hasta que les asignes una instancia.

Al intentar usar un método de una referencia null, lanza el NullPointerException.

SJuan76
  • 10,771
  • 5
  • 17
  • 31