Error de capa 8
NullPointerException es ocasionado porque tratas de ingresar a un indice que no existe en el arreglo.
Saludos.
Jaja si error mio sé que es, pero no entiendo porque no existe el índice si la variable alturaAlumnos la declaro como un array de tamaño indefinido y en la pedida de datos le señalo el índice con la variable indexArray que tiene valor 0 en la primera vuelta del bucle.
Saludos y gracias Darhius
PD: Ya está, he probado a definir un tamaño en la definición del array, así si funciona.
Codigo nuevo:
import java.util.*;
public class array0301
{
private double[] alturaAlumnos;
private double alturaMedia,alturaCero;
private int indexArray,contadorEntradas;
private Scanner entradaTeclado;
public array0301()
{
this.contadorEntradas = 0;
this.alturaCero = 0;
this.alturaAlumnos = new double[1000];
this.alturaMedia = 0;
this.indexArray = 0;
this.
entradaTeclado = new Scanner
(System.
in).
useLocale(Locale.
US); }
public void setAlturas()
{
while(entradaTeclado.hasNext())
{
if(entradaTeclado.hasNextDouble())
{
alturaAlumnos[indexArray] = entradaTeclado.nextDouble();
indexArray += 1;
contadorEntradas += 1;
}
else break;
}
}
public void getAlturas()
{
indexArray = 0;
if(contadorEntradas == 0)
{
System.
out.
format(Locale.
US,
"La altura media de %d alumnos es de %.3f metros.",contadorEntradas,alturaCero
); }
else
{
while(indexArray <= contadorEntradas)
{
alturaMedia = alturaMedia + alturaAlumnos[indexArray];
indexArray += 1;
}
System.
out.
format(Locale.
US,
"La altura media de %d alumnos es de %.3f metros.",contadorEntradas,
(alturaMedia
/ contadorEntradas
)); }
}
public static void main
(String args
[]) {
array0301 p1 = new array0301();
p1.setAlturas();
p1.getAlturas();
}
}