一. while循环
格式:
while(condition) {]()// 满足条件就执行,如果条件一直满足,就一直执行。
statement(s)
}
流程:
案例
打印 I miss you! 3000次
def main(args: Array[String]): Unit = {
// 如何打印 I miss you! 3000次
// 循环 while
var i = 1
while (i < 3001) {
println(s"$i. I miss you!")
i = i + 1
}
}
结果如图:
练习
输出1~100内的奇数,每个一行
def main(args: Array[String]): Unit = {
// 输出1~100内的奇数,每个一行
var i = 1
while (i <= 100) {
println(i)
i += 2
}
}
结果如图:
求1-100的和
def main(args: Array[String]): Unit = {
// 求1-100的和
var sum = 0
var i = 1
while (i<=100){
sum += i
i += 1
}
println(s"1到100的和是: $sum")
}
结果如图:
二. while死循环
在需要一直执行的时候,就可以使用死循环。
请输入一个年份,判断是否闰年
def main(args: Array[String]): Unit = {
// 请输入一个年份,判断是否闰年
while (true){
print("请输入一个年份:")
val year = scala.io.StdIn.readInt()
if (year%400 == 0 || (year%4 == 0 && year%100 != 0)){
println(s"$year 是一个闰年")
}else{
println(s"$year 不是一个闰年")
}
}
}
结果如图:
三. 跳出循环
- 自动跳出。循环条件不成立,就会自动结束循环
- 手动跳出循环。break
判断用户输入的年份是否是闰年,如果用户输入0,则结束判断。
import scala.util.control.Breaks.{break, breakable}
object Base19 {
def main(args: Array[String]): Unit = {
breakable{
// 不停地判断用户输入的年份是否闰年。当用户输入0的时候,跳出循环
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("欢迎下次使用!")
}
}
结果如图:
四. do while循环
格式:
do {
statement(s);
} while( condition );
while 特点:先判断条件,再执行,所以,条件不满足时,循环体不会执行
do ... while 特点:至少执行一次! 先执行,再判断条件。
var i = 100
do{
println(i)
i = i + 1
} while(i <= 10)
println("欢迎下次使用!")
结果如图: