質問

俳優が開いている場合は、俳優をランダムな場所に移動するコードを作成しようとしています。しかし、私はこの行から生じるエラーで困難を抱えています。

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());  
    }
役に立ちましたか?

解決

エラーは、あなたが持っていないことを意味します get あなたの方法 TeleporterActor クラス、したがって、コンパイラはあなたが使用することの意味を知りません get.

どちらかそのような方法をあなたに追加します TeleporterActor クラス、または他のオブジェクトでそれを呼び出します。たとえば

gr.get( loc );

私が想定した場所 get メソッドはあなたに利用できます Grid

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top