如何创建包含if语句的循环

时间:2020-01-29 18:46:08

标签: java loops methods

我正在尝试创建一个名为“ runExperiments()

的方法

循环的第一步是将一个名为“ powerLevel”的变量减1到3之间的一个随机数,这是我创建了第二种有效的方法。

我遇到问题的下一步是如果可以降低“ powerLevel”,那么我需要显示一条包含实验编号(从1开始)的消息,否则请显示一条不同的消息。显示,并且不应尝试其余实验。

然后,当所有实验结束时,我需要显示“实验运行已停止”,但是我知道如何执行此部分。

我已在下面发布了所有代码。该方法在底部。我已经进行了首次尝试,但似乎无法弄清粗体部分。任何帮助或指导都是很棒的。我不确定自己是否使用了正确的循环类型,因此也可能是错误的。

public class SpaceRocket 
{
  private String name;
  private int maxPowerLevel;
  private int numberOfExperiments;
  private int powerLevel;
  private int decreasePowerLevel;

/**
 * returns maxPowerLevel
 */
  public int getMaxPowerLevel()
  {
  return this.maxPowerLevel;
  }

 /**
  * returns numberOfExperiments
  */
  public int getNumberofExperiments()
    {
  return this.numberOfExperiments;
    }

 /**
  * returns powerLevel
  */
  public int getPowerLevel()
 {
  return this.powerLevel;
 }

 /**
  * 
  * Causes execution to pause by time number of milliseconds
  * 
  */
 public void delay(int time)
 {
  try
  {
     Thread.sleep(time); 
  }
  catch (Exception e)
  {
     System.out.println(e);
  } 
 }

 /**
  *
  * return a random integer between 1 and 3 inclusive
  */
 public int randomInteger() 
 {
  java.util.Random r = new java.util.Random();
  return r.nextInt(3) + 1;
 }  

 public SpaceRocket(String aName, int aNumberOfExperiments)
 {
  this.name = aName;
  this.numberOfExperiments = aNumberOfExperiments;
  this.powerLevel = 0;
  this.maxPowerLevel = 15;
 }

 public boolean decrementPower(int adecreasePowerLevel)
 {
  this.decreasePowerLevel = adecreasePowerLevel;
  if(decreasePowerLevel > this.powerLevel)
  {
     this.powerLevel = 0;
     return true;
  }

  else 
  {
     this.powerLevel =(this.powerLevel - this.decreasePowerLevel);
     return false;
  }

 }

 public runExperiments()
 {
  for(this.powerLevel =(this.powerLevel - randomIntegar())
  {
     if(this.powerLevel

  }  
 }

1 个答案:

答案 0 :(得分:-1)

如果我正确理解了您的问题,那么每次循环运行时,您都希望将“功率水平”降低一个随机值,然后根据是否可以降低功率水平来显示一条消息。

这是两种方法。

1)在for循环中使用if语句

for (conditions){
    if(powerlevel cannot be decremented){
        //display a messsage
        break;
    }
    // display a message
}

条件可能会在所有实验中反复出现

2)使用while循环检查是否可以在每个循环中降低功率水平

while(powerlevel can be decreased){
    //display a message containing the experiment number (starting at 1)
}
//display a different message 
相关问题