Ver Mensaje Individual
  #6 (permalink)  
Antiguo 18/06/2015, 11:12
SwagSwag
 
Fecha de Ingreso: junio-2015
Mensajes: 11
Antigüedad: 9 años, 6 meses
Puntos: 0
Respuesta: Problema con vectores o arrays, añadir y borrar

Cita:
Iniciado por Xerelo Ver Mensaje
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 original
  1. public static void nuevoConductor(conductores[] ListaConductores){
  2.        
  3.         String nif;
  4.        
  5.         System.out.println("Que necesitas crear, un 'taxista' o un 'transportista'?");
  6.         String opcionClase = lector.nextLine();
  7.        
  8.         if(opcionClase.equalsIgnoreCase("Taxista")){
  9.            
  10.             System.out.println("Dime el nif: (recuerda que la letra debe de ir en mayuscula, si no la aplicacion no lo reconocera...)");
  11.             nif = lector.nextLine();
  12.            
  13.             while(nif.length()!=9){
  14.             System.out.println("No lo pusiste bien, dimelo otra vez..");
  15.             System.out.println("Dime el nif: ");
  16.             nif = lector.nextLine();
  17.             }
  18.            
  19.             //COMPROBACION DE NIF
  20.             if(nif.length() == 9){
  21.                 System.out.println("Comprobando si es un nif verdadero...");
  22.                 System.out.println(" ");
  23.                 System.out.println("Comprobando si tiene una letra al final...");
  24.                 System.out.println(" ");
  25.                
  26.                 if(validarNIF(nif) == true){
  27.                     for (int i = 0; i < 5; i++) {
  28.                         System.out.println("...");
  29.                         System.out.println(" ");
  30.                     }
  31.                     System.out.println("Si que tiene una letra...");
  32.                     System.out.println(" ");
  33.                     System.out.println("Siguiente fase de comprobacion..");
  34.                 }
  35.                 System.out.println(" ");
  36.                 System.out.println("Comprobando si hay alguna letra entre los numeros...");
  37.                 System.out.println(" ");
  38.                 if(validarNIF(nif) == true){
  39.                     System.out.println("Son 8 numeros, el nif es valido..");
  40.                 }
  41.                 System.out.println(" ");
  42.                 System.out.println("COMPROBACION DE NIF FINALIZADA. TODO CORRECTO.");
  43.                
  44.             }
  45.            
  46.             while(validarNIF(nif) == false){
  47.                 System.out.println("Hay letras. ERROR. Finalizando aplicacion.");
  48.             }
  49.            
  50.             while(validarNIF(nif) == false){
  51.                 System.out.println("No tiene una letra... ERROR. Finalizando aplicacion.");
  52.                 break;
  53.             }
  54.            
  55.             System.out.println("Dime el nombre: ");
  56.             nom = lector.nextLine();
  57.            
  58.             System.out.println("Cuantas plazas tiene el taxista? ");
  59.             plazas = lector.nextInt();
  60.             lector.nextLine();
  61.            
  62.             while((plazas<=4) || (plazas>=10)){
  63.                 System.out.println("Tiene que ser entre 5 y 9, reinicia la aplicacion por favor.");
  64.                 break;
  65.             };
  66.            
  67.             //Añadimos el taxista al array de conductores
  68.             conductores tax = new taxistas(nif, nom, plazas);
  69.            
  70.            
  71.             // NO ME FUNCIONA
  72.             for (int i = 0; i < ListaConductores.length; i++) {
  73.                 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...
  74.                     ListaConductores[i] = tax;
  75.                 }
  76.             }
  77.                
  78.             for (int i = 0; i < ListaConductores.length; i++) {
  79.                 if(ListaConductores[i] != null){
  80.                 System.out.println(ListaConductores[i].imprimirConductor().toString());
  81.                 }
  82.             }
  83.         }