Scala循环

67 阅读2分钟

循环案例

输出 1 到 100 中能被 2、3、4 整除的数

  • for (i <- 1 to 100; if i % 2 == 0; if i % 3 == 0; if i % 4 == 0):这是一个 for 循环结构。i <- 1 to 100 表示循环变量 i 从 1 到 100。后面的多个 if 条件是循环的守卫条件,只有当 i 同时能被 2、3、4 整除时,才会执行循环体中的代码
  • println(i):在循环体中,当满足所有条件时,输出当前的循环变量 i
/*
格式:
for (循环变量<- 起点 to 终点) {
    println(循环变量)
}
for v.s while
1.for 适用于明确的知道循环起点和终点
2.while 适用于不确定循环次数的情况
 */
//1. 输出1~100 中的偶数
for(i <- 1 to 100;if(i%2 == 0);if(i%3 == 0);if(i%4 == 0)){
  println(i)
  • 注释是 “循环守卫” 的概念,当后面的条件都满足的时候,才去执行循环体的内容。
  • for(循环变量 <- 起点 to 终点;if(条件1);if(条件2);if(条件3)){ println(循环变量) }:这是对循环守卫格式的说明, for (i <- 1 to 100; if i % 2 == 0; if i % 3 == 0; if i % 4 == 0),作用是 1 到 100 的数,筛选出能同时被 2、3、4 整除的数并输出。
/*
循环守卫
  当后面的条件都满足的时候,才去执行循环体的内容

格式:
for(循环变量 <- 起点 to 终点;if(条件1);if(条件2);if(条件3)){
  println(循环变量)
}
*/
//1. 输出1~100 中能整除2,3,4的数字
for(i <- 1 to 100;if(i%2 == 0);if(i%3 == 0);if(i%4 == 0)){
  println(i)
}
  • 下面 for 循环输出 1 到 100 之间的奇数。

  • for(i <- 99 to 1 by -2) {:这是 for 循环的头部 i 是循环变量 99 to 1 表示循环变量的取值范围是从 99 到 1,by -2 表示步长为 -2,每次循环后,循环变量 i 的值会减少 2

  • println(i):在循环体中,每次循环都会打印当前的循环变量 i 的值,也就是 1 到 100 之间的奇数

/*
 循环步长:
  每次循环之后,循环变量的自增数值

 格式
 for(循环变量 <- 起点 to 终点 by 步长) {
 println(循环变量)
 }
 */

// 输出1~100中的奇数
for(i <- 99 to 1 by -2) {
  println(i)
}