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 小时前
记录 默认置灰/禁用 app ‘Search Engine Selector‘ 的disable按钮
开发语言·前端·javascript
逝水无殇5 小时前
C# 异常处理详解
开发语言·后端·c#
玖玥拾6 小时前
C# 语言进阶(十五)C# 游戏服务端 MySQL 数据库
服务器·开发语言·网络·数据库·mysql·c#
铅笔侠_小龙虾7 小时前
Rust 学习目录
开发语言·学习·rust
云泽8087 小时前
从零吃透 C++ 异常:抛出捕获、栈展开、异常重抛与编码规范详解
开发语言·c++·代码规范
灯澜忆梦7 小时前
GO---可见性规则
开发语言·golang
逝水无殇8 小时前
C# 文件的输入与输出详解
开发语言·数据库·后端·c#
这是个栗子8 小时前
前端开发中的常用工具函数(八)
开发语言·前端·javascript
凤凰院凶涛QAQ9 小时前
《Java版数据结构 & 集合类剖析》栈与队列:“push/pop 是栈的灵魂,offer/poll 是队列的骨架——四组 API,两种人生”
java·开发语言·数据结构
研☆香9 小时前
为什么变量声明在赋值前也能使用?—— 深入理解 JavaScript 变量提升与作用域
开发语言·前端·javascript