Cita:
Iniciado por Xerelo Con el trozo de código que has puesto es imposible que te dé un NullPointer, pero es evidente que no has puesto todo tu código porque no se ve la parte donde introduces los datos por consola, ni cómo la relacionas con este código.
Si ves un NullPointer, también verás en qué línea te está dando.
Si me podrias ayudar otra vez te lo agredeceria tio...
Ahora ya me sale todo, pero a la hora de añadir un objeto al array, se me repite el mismo objeto unas cuantas veces...
Aqui el codigo entero:
Código Java:
Ver originalpublic static void nuevoConductor(conductores[] ListaConductores){
System.
out.
println("Que necesitas crear, un 'taxista' o un 'transportista'?"); String opcionClase
= lector.
nextLine();
if(opcionClase.equalsIgnoreCase("Taxista")){
System.
out.
println("Dime el nif: (recuerda que la letra debe de ir en mayuscula, si no la aplicacion no lo reconocera...)"); nif = lector.nextLine();
while(nif.length()!=9){
System.
out.
println("No lo pusiste bien, dimelo otra vez.."); System.
out.
println("Dime el nif: "); nif = lector.nextLine();
}
//COMPROBACION DE NIF
if(nif.length() == 9){
System.
out.
println("Comprobando si es un nif verdadero..."); System.
out.
println("Comprobando si tiene una letra al final...");
if(validarNIF(nif) == true){
for (int i = 0; i < 5; i++) {
}
System.
out.
println("Si que tiene una letra..."); System.
out.
println("Siguiente fase de comprobacion.."); }
System.
out.
println("Comprobando si hay alguna letra entre los numeros..."); if(validarNIF(nif) == true){
System.
out.
println("Son 8 numeros, el nif es valido.."); }
System.
out.
println("COMPROBACION DE NIF FINALIZADA. TODO CORRECTO.");
}
while(validarNIF(nif) == false){
System.
out.
println("Hay letras. ERROR. Finalizando aplicacion."); }
while(validarNIF(nif) == false){
System.
out.
println("No tiene una letra... ERROR. Finalizando aplicacion."); break;
}
System.
out.
println("Dime el nombre: "); nom = lector.nextLine();
System.
out.
println("Cuantas plazas tiene el taxista? "); plazas = lector.nextInt();
lector.nextLine();
while((plazas<=4) || (plazas>=10)){
System.
out.
println("Tiene que ser entre 5 y 9, reinicia la aplicacion por favor."); break;
};
//Añadimos el taxista al array de conductores
conductores tax = new taxistas(nif, nom, plazas);
// NO ME FUNCIONA
for (int i = 0; i < ListaConductores.length; i++) {
if((ListaConductores[i] == null)){ //se que lo estoy asignando a todas las posiciones null... pero no consigo dar con la construccion para que no se me repita...
ListaConductores[i] = tax;
}
}
for (int i = 0; i < ListaConductores.length; i++) {
if(ListaConductores[i] != null){
System.
out.
println(ListaConductores
[i
].
imprimirConductor().
toString()); }
}
}