Arraylist java中的NullPointer

时间:2016-07-10 12:47:30

标签: java arraylist nullpointerexception

我尝试在7行

中创建二维ArrayList我得到NullPointerException
ArrayList<Integer>[] g = new ArrayList[500];
    for(int i = 1;i < HEIGHT - 1; i++){
        for(int j = 1;j < WIDTH - 1; j++){
            if(MAP[i][j] == 0){
                int cur = i * HEIGHT + j;
                if(MAP[i+1][j] == 0){
                    g[cur].add(cur + HEIGHT);
                }
                if(MAP[i-1][j] == 0){
                    g[cur].add(cur - HEIGHT);
                }
                if(MAP[i][j+1] == 0){
                    g[cur].add(cur + 1);
                }
                if(MAP[i][j-1] == 0){
                    g[cur].add(cur - 1);
                }
            }
        }
    }

1 个答案:

答案 0 :(得分:1)

如果您使用调试器,您应该能够看到这不会创建ArrayList只有一系列对它们的引用,这些引用都是null

你的意图

List<Integer>[] g = new ArrayList[500];
for (int i = 0; i < g.length; i++)
    g[i] = new ArrayList<>();