一. for循环
object base25 {
def main(args: Array[String]): Unit = {
/*
for v.s. while
1. for 适用于明确知道循环起点和终点
2. while 适用于不确定循环次数的情况
*/
//1. 输出1 - 100
for(i <- 1 to 100){
println(i)
}
/*
var i = 1
while(i <= 100){
println(i)
i += 1
}
*/
}
}
说明: 1.如果循环变量的类型能被推断出来,是可以省略掉变量类型的。 2.这里的数据集可以是任意类型的数据集合,如字符串,集合,数组等等。
二. 循环守卫
定义:可以在循环中添加条件,如果条件成立就执行循环。
object base26 {
def main(args: Array[String]): Unit = {
/*
循环守卫
当后面的条件都满足的时候,才去执行循环体的内容
格式:
for(循环变量 <- 起点 to 终点; if(条件1); if(条件2);...if(条件n)) {
println(操作变量)
}
*/
// 输出1 - 100 中的能整除 2,3,4 的数字
for(i <- 1 to 100; if(i%2 == 0);if(i%3 == 0);if(i%4 == 0)) {
println(i)
}
}
}
三. 循环步长
object base27 {
def main(args: Array[String]): Unit = {
/*
* 循环步长
* 每次循环之后,循环变量的自增量
*
* 格式:
* for(循环变量 <- 起点 to 终点 by 步长) {
* println(循环变量)
* }
*/
// 输出 1 - 100 中的奇数
for(i <- 1 to 100 by 2){
println(i)
}
/*
var i = 1
while(i <= 100){
println(i)
i += 2
}
*/
}
}
四. continue
import scala.util.control.Breaks.{break, breakable}
object base28 {
def main(args: Array[String]): Unit = {
/**
* break跳出for循环
*
* 格式:
* breakable{
* for( 循环变量 <- 起点 to 终点 by 步) {
*
* break
* }
*
* }
*/
breakable {
for (i <- 1 to 100) {
// 如果遇到了第一个能整除9的数字就提前结束循环
if (i % 9 == 0) {
// 结束循环
break
}
println(i)
}
}
}