Scala 的循环结构-while

133 阅读1分钟

whlie语句就是通过条件判断语句是否为真来判断是否会执行接下来的语句。

while循环的格式

var i = 0 // 循环变量控制重复的次数
while(条件){
    循环体
    i +=1
}

示例一:

[var i=0  ]()  
while(i<5){  
  println(s"i=$i")  
  i+=1  
}

输出1~100内的奇数,每个一行:
[object Main {]()  
  def main(args: Array[String]): Unit = {  
    var sum:Int = 0  
    var i = 1  
    while(i <= 100){  
      sum += i  
      i += 1  
    }  
    println(sum)  
  }  
}

死循环:在需要一直执行的时候,就可以使用死循环。

示例二:

不停地判断用户的输入的内容是否是闰年
object Main {  
  def main(args: Array[String]): Unit = {  
    while(true){  
      var year = scala.io.StdIn.readInt()  
      if(year%400 ==0 || (year%4==0 && year%100 !=0)) {  
println(s"$year 是闰年")  
      } else {  
         println(s"$year 不是闰年")  
      }  
      i += 1  
    }  
  }  
}

死循环是一个种非常使用的结果,它能确保核心逻辑一直被调用中,如果要结束死循环使用 break,breakable就可以了。

效果如下:
object day323 {
  def main(args:Array[String]): Unit = {
    breakable{
    while (true){
      print("请输入需要判断的年份(输入0则判断结束):")
      //判断用户输入的年份是否为闰年
      val year = scala.io.StdIn.readInt()
      if(year ==0){
      break
    }
      if (year % 400 == 0 || (year %4==0 && year %100 !=0)){
        println(s"${year}是闰年")
      }
      else {
        println(s"${year} 不是闰年")
      }
    }
  }
    println("死循环结束,退出系统!")
  }
}