0

時間と測定の2つのフィールドを持つデータ型を作成しました。これらのデータ型の配列を作成します。次に、array [0]のフィールドの1つに値を割り当てようとすると、nullポインター例外が発生します。誰かが私に何が悪いのか教えてもらえますか?

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.
4

1 に答える 1

4

配列を初期化しましたが、配列要素を初期化したことはありません。したがってNullPointerException、yourarray [0]がnullを返し、nullでsetMe ...()を呼び出そうとすると、配列の0番目のインデックスにアクセスしようとすると取得します。実際に配列要素を初期化する必要があります。

MeasurementPoint [] controlValues = new MeasurementPoint [points];
controlValues[0] = new Measurementpoint(val1,val2);
于 2013-01-23T09:41:26.157 に答える