我在Map Reduce程序中创建了以下自定义对象:

public class Sales implements Writable{

    private List<Double> growthValues;

    public List<Double> getGrowthValues() {
        return growthValues;
    }

    public void setGrowthValues(List<Double> growthValues) {
        this.growthValues = growthValues;
    }

    @Override
    public void readFields(DataInput in) throws IOException {
        int size=in.readInt();
        Double dValue;
        for(int i=0;i<size;i++){
            dValue=in.readDouble();
            growthValues.add(dValue);
        }
    }

    @Override
    public void write(DataOutput out) throws IOException {
        out.writeInt(growthValues.size());
        for(Double d:growthValues){
             out.writeDouble(d);
        }

    }

}

我在以下行收到NullPointerException:
growthValues.add(dValue);
这意味着dValue为null。

是因为我有List并且它应该是实现Writable接口(interface)的类型?

任何帮助将不胜感激,并在此先感谢

最佳答案



错了这意味着growthValues为null。

10-07 16:29