0

このコードはコンパイルされますが、端末には何も出力されません。

したがって、私のコードは、ロボットの y 座標をターゲットの y 座標と比較することを目的としています。

public class Ex12 
{

  private byte isTargetNorth(IRobot robot)
  {

    if (robot.getLocationY() > robot.getTargetLocation().y) 
      {System.out.println("north");
      return 1;}

    else if (robot.getLocationY() == robot.getTargetLocation().y)
      {System.out.println("no");
      return 0;}

    else 
      {System.out.println("south");
      return -1;}

  }
}
4

3 に答える 3

0

私の推測では、この関数を作成したばかりで、どこにも呼び出していません。

以下でメインを作成します。

public static void main(String[] args) {
    //Create robot instance, assuming a Robot implementation is
    //named Robot and has a default constructor.
    IRobot robot = new Robot();

    //Create instance of example class since your function is not static.
    Ex12 instance = new Ex12();
    instance.isTargetNorth(robot);
}
于 2013-10-27T21:10:13.913 に答える
0

という名前のメソッドisTargetNorthがありますが、それを呼び出すものは何もありません。メソッドを呼び出す必要があります。main()を呼び出すメソッドを作成しますisTargetNorth。クラスをコンパイルすると、コマンドラインから実行できます。ただし、IDE を使用している場合は簡単です。メイン メソッドを作成すると、おそらく IDE からクラスを実行できるからです。ロボットの実装があると仮定します:

public static void main(String[] args) {
    IRobot robot = new RobotImpl();
    isTargetNorth(robot);
}
于 2013-10-27T21:10:18.380 に答える
0

私はそれが想定されていると思います:

public static void main(String[]args)
{

     IRobot robot = new IRobot().

     Ex12 instance = new Ex12().

     instance.isTargetNorth(robot);


}

   public class Ex12 
{

  public byte isTargetNorth(IRobot robot)
  {

    if (robot.getLocationY() > robot.getTargetLocation().y) 
      {System.out.println("north");
      return 1;}

    else if (robot.getLocationY() == robot.getTargetLocation().y)
      {System.out.println("no");
      return 0;}

    else 
      {System.out.println("south");
      return -1;}

  }
}
于 2013-10-27T21:06:16.217 に答える