Ayuda con codigo que no ingresa ni imprime datos de un arreglo
Publicado por Alejandro (16 intervenciones) el 19/06/2017 04:47:02
Saludos, tengo este proyecto donde se implementan POJOS, CRUD y métodos, además de arreglos. El problema es que el método nuevoCliente no funciona, el método setImprimir al ser llamado desde una clase prueba tampoco y solo imprime espacios en blanco, al igual que los otros métodos como editar, buscar y eliminar, además de redimensionar el arreglo por si llega al limite de su tamaño. No encuentro el error, espero puedan ayudarme.
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
package dominio;
import java.util.Date;
/**
*
* @author mofg
*/
public class Banco {
private String nombre;
private static Cliente[] clientes;
private static int numClientes;
private static Empleado[] empleados;
private static int numEmpleados;
private Date nacio;
//static final define constantes que no se pueden cambiar
private static final double TASA_INTERES = 0.8;
static {
clientes = new Cliente[3];
numClientes = 0;
empleados = new Empleado[3];
numEmpleados = 0;
}
//inicializar el arreglo
public Banco() {
this.nombre = "Banco x";
clientes = new Cliente[3];
numClientes = 0;
empleados = new Empleado[3];
numEmpleados = 0;
}
public Banco(String nombre) {
this.nombre = nombre;
}
public String getNombre() {
String nombre;
return this.nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public boolean nuevoCliente(Cliente cliente) {
return false;
}
//creando un metodo con los atributos
public void nuevoCliente(String nombre, String apellido, int edad) {
// clientes[numClientes]= new Cliente(nombre, apellido, edad);
//numClientes=numClientes++;
if (numClientes == clientes.length) {
Cliente clienteaux[] = clientes;
}
clientes[getNumClientes()] = new Cliente(nombre, apellido, edad);
setNumClientes(numClientes++);
}
public int getNumClientes() {
return numClientes;
}
public void setNumClientes(int numClientes) {
this.numClientes = numClientes;
}
public Cliente getCliente(int indice) {
return clientes[indice];
}
/**
* @return the numEmpleados
*/
public int getNumEmpleados() {
return numEmpleados;
}
/**
* @param numEmpleados the numEmpleados to set
*/
public void setNumEmpleados(int numEmpleados) {
this.numEmpleados = numEmpleados;
}
public Empleado getEmpleado(int indice) {
return empleados[indice];
}
public String imprimirClientes() {
String texto = "";
for (int i = 0; i < numClientes; i++) {
texto += "\n Cliente" + clientes[i];
//"[ " + (i + 1) + " ]" + this.getCliente(i).toString();
}
return texto;
}
public String imprimir() {
return "Nombre del banco: " + this.getNombre();
}
public void redimensionarCliente(String nombre, String apellido, int edad) {
if (numClientes == clientes.length) {
Cliente cliente_aux[] = clientes;
clientes = new Cliente[clientes.length + 1];
System.arraycopy(cliente_aux, 0, clientes, 0, clientes.length - 1);
}
clientes[getNumClientes()] = new Cliente(nombre, apellido, edad);
setNumClientes(getNumClientes() + 1);
}
public void eliminarCliente(int posicion) {
Cliente clienteaux[] = clientes;
clientes = new Cliente[clientes.length - 1];
if (posicion == 0) {
System.arraycopy(clienteaux, 1, clientes, 0, clientes.length);
} else if (posicion == clientes.length) {
System.arraycopy(clienteaux, 0, clientes, 0, clientes.length);
} else if (posicion > 0 && posicion < clientes.length) {
System.arraycopy(clienteaux, 0, clientes, 0, posicion - 1);
System.arraycopy(clienteaux, posicion + 1, clientes, posicion, clientes.length);
}
numClientes = numClientes - 1;
}
public void modificarCliente(int posicion, String nombre, String apellido, int edad) {
clientes[posicion] = new Cliente(nombre, apellido, edad);
}
public void nuevoEmpleado(String nombre, String cedula, double salario) {
if (numEmpleados == empleados.length) {
Empleado empleadoaux[] = empleados;
empleados[getNumEmpleados()] = new Empleado(nombre, cedula, salario);
setNumEmpleados(getNumEmpleados());
}
}
public void nuevoEmpleado(Empleado e1) {
if (getNumEmpleados() == empleados.length) {
Empleado empleado_aux[] = empleados;
empleados = new Empleado[empleados.length + 1];
System.arraycopy(empleado_aux, 0, empleados, 0, empleados.length - 1);
}
empleados[getNumEmpleados()] = e1;
setNumEmpleados(getNumEmpleados() + 1);
}
public void redimensionarEmpleado(String nombre, String cedula, double salario) {
if (getNumEmpleados() == empleados.length) {
Empleado empleado_aux[] = empleados;
empleados = new Empleado[empleados.length + 1];
System.arraycopy(empleado_aux, 0, empleados, 0, empleados.length - 1);
}
empleados[getNumEmpleados()] = new Empleado(nombre, cedula, salario);
setNumEmpleados(getNumEmpleados() + 1);
}
public String imprimirEmpleado() {
String texto;
texto = " ";
for (int i = 0; i < getNumEmpleados(); i++) {
texto += "EMPLEADO [" + (i + 1) + "]" + this.getEmpleado(i).toString();
}
return texto + "\n";
}
public void eliminarEmpleado(int posicion) {
Empleado empleadoaux[] = empleados;
empleados = new Empleado[empleados.length - 1];
if (posicion == 0) {
System.arraycopy(empleadoaux, 1, empleados, 0, empleados.length);
} else if (posicion == empleados.length) {
System.arraycopy(empleadoaux, 0, empleados, 0, empleados.length);
} else if (posicion > 0 && posicion < empleados.length) {
System.arraycopy(empleadoaux, 0, empleados, 0, posicion - 1);
System.arraycopy(empleadoaux, posicion + 1, empleados, posicion, empleados.length);
}
setNumEmpleados(getNumEmpleados() - 1);
}
public boolean validarDuplicados(Empleado e) {
for (Empleado emp : empleados) {
if (emp.equals(e)) {
return true;
}
}
return false;
}
}
Valora esta pregunta
0