【问题标题】:Creating a userdefined datatype giving problems创建用户定义的数据类型会产生问题
【发布时间】:2013-01-23 09:37:02
【问题描述】:

我创建了一个包含两个字段的数据类型,时间和测量。我创建了这些数据类型的数组。然后,当我尝试将值分配给 array[0] 的一个字段时,我得到一个空指针异常。谁能告诉我怎么了?

Public class MeasurementPoint{

private int time;
private double  measurement;

public MeasurementPoint(){
this.time =0;
this.measurement =0;}}

public void setMeausurement(double value){
this.measurement = value;}
public double getMeasurement (){
return this.measurement;}

public void setTime(int value){
this.time = value;}
public int getMeasurement (){
return this.time;}
}

我用来创建数组的代码如下

MeasurementPoint [] controlValues = new MeasurementPoint [points];
System.out.println(controlValues.length(); // this gives me 16 so I know the array is created

controlValues[0].setMeasurement(aCtivity);// this is where I get the exception.

【问题讨论】:

  • setMeausurement() 而你正在调用 setMeasurement()...这是错字吗?

标签: java nullpointerexception initialization custom-data-type


【解决方案1】:

您初始化了数组,但从未初始化过 数组元素,因此当您尝试访问数组的第零个索引时会得到 NullPointerException,因为 yourarray[0] 返回 null 而您尝试在 null 上调用 setMe...() .. 你必须实际初始化你的数组元素。

MeasurementPoint [] controlValues = new MeasurementPoint [points];
controlValues[0] = new Measurementpoint(val1,val2);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-26
    • 1970-01-01
    • 2013-12-01
    • 2014-04-18
    • 1970-01-01
    • 2014-07-31
    相关资源
    最近更新 更多