Java ArrayList中的NullPointerException
我这辈子都搞不清楚! 它说第20行有一个空指针异常,就是这一行Java ArrayList中的NullPointerException,java,android,Java,Android,我这辈子都搞不清楚! 它说第20行有一个空指针异常,就是这一行 walls.add(new Wall(random.nextInt(20), random.nextInt(20))); 我申报错了吗?我做错了什么?这是不是其中的一件事,它是如此愚蠢,我只是盲目的 以下是完整的代码: package com.astar.world; import java.util.ArrayList; import java.util.List; import java.util.Random; impo
walls.add(new Wall(random.nextInt(20), random.nextInt(20)));
我申报错了吗?我做错了什么?这是不是其中的一件事,它是如此愚蠢,我只是盲目的
以下是完整的代码:
package com.astar.world;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import com.astar.objects.Player;
import com.astar.objects.Wall;
public class World {
private Player player;
private List<Wall> walls;
private Random random;
public World() {
player = new Player(2, 2);
walls = new ArrayList<Wall>();
for (int i = 0; i < 10; i++) {
walls.add(new Wall(random.nextInt(20), random.nextInt(20)));
}
}
public void update(float deltaTime) {
}
public Player getPlayer() {
return player;
}
public List<Wall> getWalls() {
return walls;
}
package com.astar.world;
导入java.util.ArrayList;
导入java.util.List;
导入java.util.Random;
导入com.astar.objects.Player;
导入com.astar.objects.Wall;
公共阶级世界{
私人玩家;
私人名单墙;
私有随机;
公共世界(){
玩家=新玩家(2,2);
墙=新的ArrayList();
对于(int i=0;i<10;i++){
添加(新墙(random.nextInt(20),random.nextInt(20));
}
}
公共无效更新(浮动增量时间){
}
公共播放器getPlayer(){
返回球员;
}
公共列表getWalls(){
返回墙;
}
}
以下是错误:
线程“LWJGL应用程序”java.lang.NullPointerException中出现异常
在com.astar.world.world.(world.java:20)在
GameScreen.com.astar.screens.GameScreen.(GameScreen.java:13)位于
com.astar.game.astaragame.create(astaragame.java:11)位于
com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:136)
在
com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:114)
我没有看到您在代码中实例化变量
random
。random
未初始化,因此出现NullPointerException
要解决这个问题,就去吧
private Random random = new Random();
为什么-1回答这个问题?来自那些认为你不应该回答这个问题的海报,因为这个问题太简单了。忽略它并继续。实例化将是比初始化更合适的单词Instantiation将是比初始化更合适的单词