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
相关推荐
总要学点什么3 分钟前
第98篇:三维特效-材质线效果——给一条线换十种材质,虚线的图案只填了一半
开发语言·前端·javascript·ecmascript·gis·webgl·材质
田甲18 分钟前
做一款 Type-C 母座读卡器:GL3224 双卡方案实测
c语言·开发语言
严肃小白兔35 分钟前
MATLAB 绘图与科研论文插图制作:图形设计、统计表达与矢量导出
开发语言·matlab·科研绘图
Funlang2 小时前
给机器写的 JavaScript 造个笼子
开发语言·javascript·ecmascript
普通人62 小时前
PHP文件读写完全指南
开发语言·php·1024程序员节
坤坤子吖3 小时前
Linux网络编程:TCP服务器的多进程与多线程实现
linux·服务器·开发语言·网络·c++·笔记·学习
一晌小贪欢4 小时前
Python基础:第 09 篇 · while 循环:重复直到不满足
开发语言·c++·python·数据可视化·面向对象·python办公
xiaoye-duck4 小时前
《C++ 项目:手写大模型接入 SDK》LLMManager架构设计与实现
开发语言·网络·c++·语言模型
一条大祥脚5 小时前
CuTe 与 CuTe DSL:从 C++ 模板元编程到 Python DSL 的 GPU 编程演进
开发语言·c++·python·cutlass·cute·cute dsl
FRing035 小时前
vue2干货总结8(路由模块封装、router-link、声明式导航、路由重定向、编程式导航)
开发语言·前端·vue.js·vue2