gpt4 book ai didi

java - 在 Java 构造函数中设置数据时出现 NullPointerException

转载 作者:行者123 更新时间:2023-12-02 04:43:17 25 4
gpt4 key购买 nike

我正在尝试获取数组形式的属性值,以便使用它们在 PDF 文件中显示一些数据。当我尝试类似的操作时,所有属性值都等于 null。

Product p = new Product("989-ST", "Magazine Vogue");
System.out.println(p.getData().length);
for(String e : p.getData()){
System.out.print(e + " ");
}
//--Output:: 2
//--null null

我的 Prdocut 类如下:

Public class Product {
private String sku;
private String descripcion;


public Product() {

}

public Product(String sku, String descripcion) {
sku = this.sku;
descripcion = this.descripcion;

}

public String getDescripcion() {
return descripcion;
}
public void setDescripcion(String descripcion) {
this.descripcion = descripcion;
}
public String getSku() {
return sku;
}
public void setSku(String sku) {
this.sku = sku;
}

public String[] getData() {
String[] data = { this.descripcion, this.sku };
return data;
}
}

我错过了什么吗?因为当我使用 setter 设置属性值时,我可以获得预期的值:

Product p = new Product();
p.setSku("989-ST");
p.setDescription("Magazine Vogue");
System.out.println(p.getData().length);
for(String e : p.getData()){
System.out.print(e + " ");
}
//--Output:: 2
//--989-ST Magazine Vogue

最佳答案

构造函数中的赋值语句必须颠倒过来:

this.sku = sku;
this.descripcion = descripcion;

否则您会将字段值(为空)分配给局部变量。

关于java - 在 Java 构造函数中设置数据时出现 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29929240/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com