Generar una lista de teléfonos. La lista debe ser un objeto que encapsula la matriz de objetos persona, la clase CPersona define los atributos privados nombre, dirección, teléfono relativos a una persona, métodos respectivos que en un menú de opciones permita: añadir, eliminar y buscar en una lista.
El error que me sale es este: Exception in thread "main" java.lang.NullPointerException
gracias de antemano por la ayuda.
Código
public class CPersona { this.nombre = nombre; this.telefono = telefono; this.direccion = direccion; } this.nombre = nombre; } this.telefono = telefono; } this.direccion = direccion; } return nombre; } return telefono; } return direccion; } // TODO Auto-generated method stub } }
Código
import java.util.Scanner; public class Lista { private CPersona[] persona; private static int cantidad; Lista(){ persona = new CPersona[1000]; cantidad = 0; } public void anadir(Scanner tecla){ String nombre, telefono, direccion; nombre = tecla.nextLine(); telefono = tecla.nextLine(); direccion = tecla.nextLine(); if(cantidad == 0){ persona[cantidad].setNombre(nombre); persona[cantidad].setTelefono(telefono); persona[cantidad].setDireccion(direccion); cantidad++; } boolean entrar = true; if(cantidad != 0){ for(int i = 0 ; i < cantidad; i++) if(persona[i].getTelefono().equals(telefono)) entrar = false; if(entrar){ persona[cantidad].setNombre(nombre); persona[cantidad].setTelefono(telefono); persona[cantidad].setDireccion(direccion); cantidad++; }else{ } } } public void eliminar(Scanner tecla){ int posicion = buscar(tecla); } public int buscar(Scanner tecla){ int pos = 0; String telefono; telefono = tecla.nextLine(); do{ pos++; }while(pos < cantidad && persona[pos].getTelefono().equals(telefono) == false); if(persona[pos].getTelefono().equals(telefono)){ return pos; }else{ return -1; } } // TODO Auto-generated method stub Lista registro = new Lista(); int rpta; int opcion; do{ opcion = tecla.nextInt(); switch(opcion){ case 1:{ registro.anadir(tecla); break; } case 2:{ registro.eliminar(tecla); break; } case 3:{ registro.buscar(tecla); break; } } rpta = tecla.nextInt(); }while(rpta == 1); } }