GridWorld实验室问题

时间:2011-12-04 18:43:07

标签: java gridworld

我正在尝试创建一个代码,如果它被打开,它会将一个actor移动到一个随机位置。但是,我遇到了由此行引起的错误的困难。

if (null == get(loc))

基本上我认为这条线会检查位置是否打开。但是,任何人都可以帮我解决这个错误吗?

F:\Lab III Car and Teleporter\Teleporter Project\TeleporterActor.java:42: error: cannot find symbol
            if (null == get(loc))
                        ^
  symbol:   method get(Location)
  location: class TeleporterActor
1 error

Process completed.

public void act()
    {
        Location place = getLocation();
        Grid<Actor> gr = getGrid();
        int cols = gr.getNumRows();
        int rows = gr.getNumCols();
        do
        {
            Location loc = new Location((int)(Math.random() * rows - 1), (int)(Math.random() * cols - 1));
            if (null == get(loc))
                moveTo(loc);    
        }
        while (place == getLocation());  
    }

1 个答案:

答案 0 :(得分:1)

错误表示您的get类中没有TeleporterActor方法,因此编译器不会使用get知道您的意思。

将这样的方法添加到TeleporterActor类,或者在另一个对象上调用它,例如

gr.get( loc );

我认为get

上提供了Grid方法