public void crearCliente() {
int i, k, j, l;
registro r = new registro();
k = lr.getSize();
for (i = 0; i < k; i++) {
r = lr.get(i);
l = r.getSize();
String contenido[] = new String[8];
for (j = 0; j < l; j++) {
contenido[j] = r.getCampoR(j);
//System.out.println(contenido[j]);
}
c1 = new Cliente(contenido[0], contenido[1], contenido[2], contenido[3], contenido[4], contenido[5], contenido[6], contenido[7]);
c1.verCliente();}
在这段代码中,最后,我为c1赋值,但是当我打印它时,我在所有c1字段中都得到null。我为Cliente课程编写了我的代码。 我想打印我给c1的所有值,但我不知道为什么它在所有字段中打印null。我使用调试器跟踪代码,一切都是正确的,直到将所有值分配给新变量的句子。
public class Cliente {
private String Id_cliente;
private String Cod_postal;
private String Numero;
private String Calle;
private String Provincia;
private String Poblacion;
private String Telefono;
private String Apellidos;
public Cliente(String idc, String cp, String num, String cal, String prov, String pob, String tlf, String aps){
idc = Id_cliente;
cp = Cod_postal;
num = Numero;
cal = Calle;
prov = Provincia;
pob = Poblacion;
tlf = Telefono;
aps = Apellidos;
}
public void verCliente(){
System.out.println("Id_cliente: "+ Id_cliente);
System.out.println("Codigo postal: "+ Cod_postal);
System.out.println("Numero: "+ Numero);
System.out.println("Calle: "+ Calle);
System.out.println("Provincia: "+ Provincia);
System.out.println("Poblacion: "+ Poblacion);
System.out.println("Telefono: "+ Telefono);
System.out.println("Apellidos: "+ Apellidos);
}
}
答案 0 :(得分:3)
你应该改变这个
idc = Id_cliente;
到
Id_cliente = idc;.
您正在为方法参数而不是字段分配值。这同样适用于构造函数Cliente
中的所有参数。
答案 1 :(得分:1)
您的作业在构造函数中是向后的。切换所有这些的左侧和右侧,它应该工作。
答案 2 :(得分:0)
Cliente类的构造函数正在切换assignement。 将idc = Id_cliente更改为Id_cliente = ic。