Java,嵌套类:如何访问“更高”级别的变量

时间:2011-09-14 14:36:21

标签: java list

我运行此代码时遇到错误!

   private class ValuesClass {

            List<Float> value;

            public void addv(String _value) {
                    Float f = new Float(_value);
                    this.value.add(f);
            }
    }

这是返回的错误

0.83
0.83
Exception in thread "main" java.lang.NullPointerException
    at com.gsware.gsmarketanalyzer.StockQuote$ValuesClass.addv(StockQuote.java:216)

我不知道错误在哪里!

5 个答案:

答案 0 :(得分:3)

答案 1 :(得分:1)

试试这个

private class ValuesClass {

    List<Float> value;

    public void addv(String _value) {
        Float f = new Float(_value);
        if(this.value==null)
              this.value = new ArrayList<Float>();

        this.value.add(f);

    }
}

private class ValuesClass {

    List<Float> value = new ArrayList<Float>();

    public void addv(String _value) {
        Float f = new Float(_value);
        this.value.add(f);

    }
}

答案 2 :(得分:0)

未初始化,因此 null

答案 3 :(得分:0)

错误是这个

 List<Float> value;

解决了

List<Float> value = new ArrayList<Float>();

答案 4 :(得分:0)