Hola buenos dias
El motivo de este mensaje es que estoy haciendo un ArrayList de personas y dentro de la clase persona tengo uno de los atributos otro ArrayList de teléfonos.
Este es el Main
Código:
public static void main(String[] args) {
ArrayList<Persona> personas = new ArrayList<Persona>();
String resp = "";
Scanner sc = new Scanner(System.in);
do {
Persona p = new Persona();
do {
String telefono;
do
{
System.out.print("Telefono:");
telefono = sc.nextLine();
} while(existeTelefono(personas, telefono));)
p.addTelefono(telefono);
System.out.print("Mas telefonos? (s/n)");
resp = sc.nextLine();
} while(!resp.equals("n"));
personas.add(p);
System.out.print("Quieres meter otra persona?(s/n)");
resp = sc.nextLine();
} while (!resp.equals("n"));}
public static boolean existeTelefono(ArrayList<Persona>personas, String telefono){
for (int i = 0; i < personas.size(); i++) {
for (int j = 0; j < personas.get(i).getTelefono().size();j++) {
if(personas.get(i).getTelefono().get(j).equals(telefono))
return true;
}
}
return false;
}
Y este es la clase Persona
Código:
public class Persona {
private String dni;
private String nombre;
private String apellidos;
private ArrayList<String> telefono;
private ArrayList<String> email;
public Persona() {
telefono = new ArrayList<String>();
email = new ArrayList<String>();
}
public String getDni() {
return dni;
}
public void setDni(String dni) {
this.dni = dni;
}
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public String getApellidos() {
return apellidos;
}
public void setApellidos(String apellidos) {
this.apellidos = apellidos;
}
public void addTelefono(String telf) {
telefono.add(telf);
}
public ArrayList<String> getTelefono() {
return telefono;
}
public ArrayList<String> getEmail() {
return email;
}
public void addEmail(String e) {
email.add(e);
}
}
El problema es que en el bucle for de comprobar si existe teléfono no entra, pero me devuelve false aunque el teléfono este repetido , no se por que el método boolean existeTelefono no me funciona. Espero que me puedan ayudar. Muchas gracias
He limitado el código solo a esta función aunque me ocurre lo mismo con los email, pero si lo he conseguido hacer con dni en un simple bucle for. El problema es cuando accedo a un for dentro de otro for. No se que estoy haciendo mal. Muchas gracias de nuevo. Agradecería mucho vuestra ayuda