所以我有一些代码用于创建类player
的四个对象。该对象只需要传递给构造函数的一个字符串。
int players = view.newGameBox();
for (int i = 1; i <= players; i++) {
model.add(new player(view.playerName(i)));
}
ArrayList<String> names = new ArrayList<String>();
for (player pname : model) {
names.add(pname.Name());
}
view.setNames(names);
view.newGameBox()
返回一个int,表示要创建的玩家数量。
model
是player
view.newPlayerName
用于获取每个玩家名称的用户输入。
每次运行代码时,无论结构如何,NullPointerException
始终会触发model.add(new player(view.playerName(i)));
行。我缺少哪些关于arraylists的东西?
答案 0 :(得分:4)
您的model
是null
,或view.playerName(i)
内的某些内容会引发此异常。在这一行
model.add(new player(view.playerName(i)));
两个表达式可能会导致NullPointerException
- model.add()
和view.playerName()
。由于view
不是null
(否则,view.newGameBox()
会崩溃),它可能是model
,也可能是view.playerName(i)
内的其他一行。< / p>