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
相关推荐
Ada's8 小时前
【计算机基础系列】003:Python数据结构
开发语言·数据结构·python
2601_962885728 小时前
如何用 Python 计算 TRIX 三重指数平滑均线指标?
开发语言·python
还卿一钵无情泪9 小时前
Unsloth 微调 构建自己的大模型 没有GPU也能微调
linux·开发语言·人工智能·python·大模型·nlp·unsloth
倔强的石头10610 小时前
应用账号最小权限实践:读写账号、报表账号、运维账号分层
java·运维·开发语言
传人once10 小时前
页面中心圆圈放大效果如何写
开发语言·javascript·ecmascript
NeilYuen10 小时前
【C++】STL源码仿写(二):vector
开发语言·c++
蜗牛互联网11 小时前
Python消费Responses SSE事件:增量文本、超时与取消
java·开发语言·人工智能·后端·python
weixin_3077791311 小时前
C++代码实现MATLAB中的crossval函数功能
开发语言·c++·算法·matlab
ttwuai12 小时前
Go后台管理系统开源项目:4个官方仓库怎么追溯和核验
开发语言·golang·开源
谢亮_vipxieliang12 小时前
Go Worker Pool 设计——从原理到生产级实现
开发语言·后端·golang