1

アクターが開いている場合、アクターをランダムな場所に移動するコードを作成しようとしています。ただし、この行に起因するエラーで問題が発生しています。

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());  
    }
4

1 に答える 1

1

このエラーはget、クラスにメソッドTeleporterActorがないことを意味するため、コンパイラは を使用する意味を認識できませんget

そのようなメソッドをTeleporterActorクラスに追加するか、別のオブジェクトで呼び出します。たとえば、

gr.get( loc );

getメソッドがあなたのGrid

于 2011-12-04T19:24:27.807 に答える