0

我似乎没有任何理由出现 nullPointerException,请您查看我的代码并告诉我您的意见吗?这是我在另一个类上调用的类和构造函数,以便从链表中随机获取标签(使用随机播放,这也是随机化的)。这里是

public class RandomHeuristic {

    GameInterface game;
    JLabel randomLabel;
    public JLabel RandomHeuristic() {
        randomLabel = (JLabel) game.labels.getFirst();
        int counter = 0;
        do {
            Collections.shuffle(game.labels);
            randomLabel = (JLabel) game.labels.getFirst();
            counter++;
            if (counter == 100) {
                break;
            }
            /*
             * Debugging
             * System.out.println(randomLabel.getText());
             */
        } while (randomLabel != null && game.isLegalMove(randomLabel) == false);
        //Retrieves and removes the head (first element) of this list.
        if(randomLabel == null){
            RandomHeuristic();
        }
        //game.labels.remove(randomLabel);
        return randomLabel;
    }
}

这里是我调用构造函数的地方,playHeuristicMove() 期待一个 JLabel,我在调试时检查了它是否正常工作,尽管当我调用它时我仍然得到一个 nullPointer 异常。randomHeuristicOne 是在同一个类上创建的,如下所示:RandomHeuristic randomHeuristicOne; playHeuristicMove(randomHeuristicOne.RandomHeuristic());

4

1 回答 1

2

也许您想看看您的game GameInterface对象,它似乎从未被实例化

于 2013-06-15T11:17:59.920 回答