07_for循环返回值&while循环

文章目录

1.循环返回值

for循环返回值是Unit

原因是防止产生歧义;

2.yield接收for返回值

复制代码
//    2.yield关键字打破循环,可以使for循环输出返回值为一个域(取最后一行执行结果,如下),请注意写法;
    var array = Range(1,10,2)
    var result = for (elem <- array)  yield{

      elem

      elem * 2

      elem * 3
    }

    println(result)		//Vector(1, 3, 5, 7, 9)

3.scala调用yield方法创建线程对象

4.scala中的while循环

复制代码
//    4.while循环
    /*
    while循环和java一样,但是多了一个do while循环,会先打印执行结果后执行判断条件
     */

    do{

      println("先打印")

    }while(false)
//    先打印

5.scala中的流程控制

scala中没有break,continue原因是其不是面向对象的,也可以用其他语法代替

continue使用if else代替

break使用面向方式代替,底层抛出for循环异常,外层捕获异常

复制代码
      for ( i <- Range(1,10,2)){

//        平替continue
        if (i == 3) {} else println(i)

//        平替break
        if (i>=9) Breaks.breakable()
      }

      println("main")

1
5
7
9
main
相关推荐
PM老周9 分钟前
产品路线图怎么做:从愿景到里程碑的 6 步落地法
开发语言·安全·阿里云·团队开发·个人开发
小陈phd16 分钟前
Python MCP 工具开发入门:Server、Client 和 LLM 集成
开发语言·python·github
Yang-Never18 分钟前
Android 内存泄漏 -> ViewModel持有Activity/Fragment导致的内存泄漏
android·java·开发语言·kotlin·android studio
剑之所向18 分钟前
c# 中间表
开发语言·c#
蓝影铁哥21 分钟前
浅谈5款Java微服务开发框架
java·linux·运维·开发语言·数据库·微服务·架构
代码于老总23 分钟前
【Scala 技巧】用隐式类给 String “开挂”:一行代码实现手机号 / 身份证号校验
scala
程芯带你刷C语言简单算法题26 分钟前
Day39~实现一个算法确定将一个二进制整数翻转为另一个二进制整数,需要翻转的位数
c语言·开发语言·学习·算法·c
Lv117700826 分钟前
初识Visual Studio中的 WinForm
开发语言·ide·笔记·c#·visual studio
superman超哥29 分钟前
Rust Cargo Build 编译流程:从源码到二进制的完整旅程
开发语言·后端·rust·编译流程·cargo build·从源码到二进制
永远前进不waiting35 分钟前
C语言复习——2
c语言·开发语言