for循环的了解与应用

1. for语句的基本格式

(一)for循环

格式:

for ( 循环变量 <- 数据集) {

// 循环体代码

}

说明:

1.如果循环变量的类型能被推断出来,是可以省略掉变量类型的。

2.这里的数据集可以是任意类型的数据集合,如字符串,集合,数组等等。

案例1

scss 复制代码
object dfa09 {
  def main(args: Array[String]): Unit = {
    /*
     * var i = 1
     * while(i <= 20){
     *   println(i)
     *   i += 1
     * }
     *
     * for(i <- 1 to 20) {
     *   println(i)
     * }
     */
    for(j <- 1 to 20 by 2){
      println(j)
    }
  }
}

(二)循环守卫

可以在循环中添加条件,如果条件成立就执行循环。这个叫循环守卫

格式:

for(循环变量 <- 数据集 if condition1; if condition2 ...){

循环体

}

案例:打印1 - 10 内的偶数

css 复制代码
for(i <- 1 to 10; if(i%2==0)){println(i)}

(三)循环步长

[提问] :如何输出1 ~ 100 之间的奇数?

按1,3,5... 这个格式来输出,这就涉及到步长。

格式1:1 to 5 by 2

格式2:Range(1,5,2)

scss 复制代码
for(i <- 1 to 100 by 2 ){  
println(i)  
}

(四) 循环的返回值

for也可以获取到返回值,使用yield

代码演示:

scss 复制代码
[val ret = for(i <- 1 to 3) yield { i*2 }]()  
println(ret)  
println(ret(1))

2. for和while的区别

在编程中,forwhile 都是用于实现循环的控制结构,但它们的适用场景和语法特点有所不同

for循环

通常用于已知循环次数的场景,语法中直接包含循环变量的初始化、循环条件和迭代逻辑,结构更紧凑。

while 循环

适用于循环次数不确定,但已知循环终止条件的场景,需要单独定义循环变量、循环条件和迭代逻辑。

总结

  • 当循环次数已知或需要遍历集合时,优先使用 for 循环,代码更简洁、可读性更高。
  • 当循环次数不确定,依赖动态条件时,使用 while 循环更灵活。

3. continue语句

在scala中是没有break和continue关键字的,如果一定要用,可以用scala.util.control包下的Breaks类的break

相关推荐
写不来代码的草莓熊1 分钟前
vue前端面试题——记录一次面试当中遇到的题(9)
前端·javascript·vue.js
阑梦清川11 分钟前
docker部署tomcat和nginx
后端
JinSo21 分钟前
pnpm monorepo 联调:告别 --global 参数
前端·github·代码规范
程序员码歌28 分钟前
豆包Seedream4.0深度体验:p图美化与文生图创作
android·前端·后端
urhero32 分钟前
工作事项管理小工具——HTML版
前端·html·实用工具·工作事项跟踪·任务跟踪小工具·本地小程序
二十雨辰33 分钟前
eduAi-智能体创意平台
前端·vue.js
golang学习记42 分钟前
从0死磕全栈之Next.js connection() 函数详解:强制动态渲染的正确姿势(附实战案例)
前端
郝学胜-神的一滴1 小时前
Three.js光照技术详解:为3D场景注入灵魂
开发语言·前端·javascript·3d·web3·webgl
m0dw1 小时前
vue懒加载
前端·javascript·vue.js·typescript