error en método para buscar una posición con el nombre
Publicado por Danni (12 intervenciones) el 10/12/2021 00:11:40
tengo un método donde se ingresa el nombre y te regresa los datos que hay en esa posición pero tengo un problema con el return que esta después del if, si lo dejo solo me muestra la información de la primer posición y en los demás me sale el mensaje que debe salir cuando la posición es null aunque estén registrados y si lo quito si se muestra la información de todos los clientes pero cuando la posición es null me marca error y no se muestra el mensaje que debería, alguna solución?
1
2
3
4
5
6
7
8
9
10
11
public Locker obtenerLocker(String nombre) {
for (int i = 0; i < lockers.length; i++) {
if (lockers[i].getNombre().equalsIgnoreCase(nombre)) {
return lockers[i];
}
return null;
}
return null;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
public void mostrarLockerCliente() {
Scanner tec = new Scanner(System.in);
char opcion = 's';
while (opcion == 's' || opcion == 'S') {
System.out.println("Ingrese el nombre del cliente: ");
String nombre = tec.next();
if (gimnasio.obtenerLocker(nombre) == null) {
System.out.println(" el cliente proporcionado no está registrado ");
System.out.println("");
System.out.println("¿Se desea consultar la informacion de otro cliente, (S/N)?.");
opcion = tec.next().charAt(0);
gimnasio.respuestInvalida(opcion);
} else if(gimnasio.obtenerLocker(nombre).getNombre().equalsIgnoreCase(nombre)){
System.out.println(" **** Confirmacion ****");
System.out.println("Nombre del cliente: " + gimnasio.obtenerLocker(nombre).getNombre());
System.out.println("Tamaño " + gimnasio.obtenerLocker(nombre).getTamanio());
System.out.println("Contratacion: " + gimnasio.obtenerLocker(nombre).getTipoContratacion());
System.out.println("Costo " + gimnasio.obtenerLocker(nombre).costoLocker());
System.out.println("Locker asignado:" + gimnasio.obtenerPosicion(gimnasio.obtenerLocker(nombre)));
System.out.println("");
System.out.println("¿Se desea consultar la informacion de otro cliente, (S/N)?.");
opcion = tec.next().charAt(0);
gimnasio.respuestInvalida(opcion);
}
}
}
Valora esta pregunta


0