Finch Robot - 如何循环特定的代码行? (JAVA)

问题描述 投票:0回答:2

我对编码完全不熟悉,也不清楚我在做什么。我有一个我的Finch机器人的代码,只是让它左右移动,但是如何让这个简单的过程循环三次?此外,是否可以实施代码以询问用户他们希望产品循环多少次?

对不起,如果这似乎是一个愚蠢的问题。我到处寻找并且不太了解如何正确循环代码。我要循环的代码发布在下面。

public static void main(final String[] args)
       {
          Finch myFinch = new Finch();

          myFinch.setLED(Color.green);
          myFinch.setWheelVelocities(180, 0, 750);
          myFinch.setWheelVelocities(100, 100, 1500);

          myFinch.setLED(Color.red);
          myFinch.setWheelVelocities(0, 180, 850);
          myFinch.setWheelVelocities(180, 180, 1500);

          myFinch.quit();
          System.exit(0);
          }             
java eclipse robot finch
2个回答
0
投票

第一种方法:使用for循环

 public static void main(final String[] args)
           {
              Finch myFinch = new Finch();
              Scanner sc = new Scanner(System.in);
              System.out.println("How many times?");
              int noOfTimes = sc.nextInt();

            for(int movement=0; movement < noOfTimes; movement++){ 
              myFinch.setLED(Color.green);
              myFinch.setWheelVelocities(180, 0, 750);
              myFinch.setWheelVelocities(100, 100, 1500);

              myFinch.setLED(Color.red);
              myFinch.setWheelVelocities(0, 180, 850);
              myFinch.setWheelVelocities(180, 180, 1500);
           }
              myFinch.quit();
              System.exit(0);
 }

第二种方法:使用while循环

          Scanner sc = new Scanner(System.in);
          System.out.println("How many times?");
          int noOfTimes = sc.nextInt();

  while(noOfTimes > 0){ 

          myFinch.setLED(Color.green);
          myFinch.setWheelVelocities(180, 0, 750);
          myFinch.setWheelVelocities(100, 100, 1500);

          myFinch.setLED(Color.red);
          myFinch.setWheelVelocities(0, 180, 850);
          myFinch.setWheelVelocities(180, 180, 1500);
          noOfTimes--; 

       }

第三种方法:使用do-while循环

           Scanner sc = new Scanner(System.in);
          System.out.println("How many times?");
          int noOfTimes = sc.nextInt();

       do{

          myFinch.setLED(Color.green);
          myFinch.setWheelVelocities(180, 0, 750);
          myFinch.setWheelVelocities(100, 100, 1500);

          myFinch.setLED(Color.red);
          myFinch.setWheelVelocities(0, 180, 850);
          myFinch.setWheelVelocities(180, 180, 1500);
          noOfTimes--; 

       }while(noOfTimes > 0);

© www.soinside.com 2019 - 2024. All rights reserved.