簡體   English   中英

芬奇機器人-如何循環特定代碼行? (JAVA)

[英]Finch Robot - How do I loop specific lines of code? (Java)

我對編碼完全陌生,也不清楚我在做什么。 我有一個用於Finch機器人的代碼,可以使它左右移動,但是如何使這個簡單的過程循環3次? 此外,是否可以實施代碼來詢問用戶他們希望產品循環多少次?

抱歉,這似乎是一個愚蠢的問題。 我到處都看過,還不太了解如何正確循環代碼。 我要循環的代碼發布在下面。

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

第一種方法:使用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);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM