Scala跳出循环的三种方法

Scala跳出循环的三种方法Scala跳出循环的三种方法1、基于boolean类型的控制变量while循环:varflag=truevarres=0varn=0while(flag){ res+=n n+=1 if(n==5){   flag=false }}for循环:(高级for循环,加上了if守卫)

大家好,又见面了,我是你们的朋友全栈君。

Scala跳出循环的三种方法


1、基于boolean类型的控制变量

while循环:

var flag = true
var res = 0
var n = 0

while(flag) {

  res += n
  n += 1

  if (n == 5) {

    flag = false
  }
}

for循环:(高级for循环,加上了if守卫)

var flag = true
var res = 0

for (i <- 0 until 10 if flag) {

  res += i
  if (i == 4) flag = false
}



2、使用嵌套函数以及return

def add_outer() = {

  var res = 0

  def add_inner() {

    for (i <- 0 until 10) {

      if (i == 5) {

        return
      }
      res += i
    }
  }

  add_inner()
  res
}

3、使用Breaks类的break方法

跟java里面的break比较类似,相对来说,比较灵活好用;与breakable代码块配合使用

import scala.util.control.Breaks._

var res = 0

breakable {

  for (i <- 0 until 10) {

    if (i == 5) {

      break;
    }
    res += i
  }
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/136026.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • redis集群搭建(非常详细,适合新手)_redis哨兵模式两主多从

    redis集群搭建(非常详细,适合新手)_redis哨兵模式两主多从前言由于项目需要,搭建了一个Redis服务器集群,实现了主从配置和容灾部署,使得主机出现故障时,可自动进行容灾切换,下面就详细讲解一下如何利用Redis来实现。文章重点1、Redis入门简介2、Redis安装部署3、Redis集群整体架构4、Redis主从配置及数据同步5、Redis哨兵模式搭建一、Redis入门简介Redis(RemoteDictiona…

    2022年9月1日
  • CentOS7下安装FTP服务

    CentOS7下安装FTP服务

    2021年10月19日
  • countdown倒计时安卓软件_倒计时工具

    countdown倒计时安卓软件_倒计时工具CountDownTimer是Android官方SDK提供的一个倒计时工具,其仍然是基于Handlersend/postdelay,可视作在倒计时这个特定的使用场景下对于Handler的一种封装。用法CountDownTimer使用起来是很方便的。CountDownTimer是一个抽象类,通过构造方法创建实例,并且实现两个抽象方法即可。start()方法为启动倒计时。CountDownTime…

    2022年9月16日
  • idea激活 jetbrains-agent(jetbrains激活码)

    一、下载jar包JetbrainsCrack-2.7-release-str.jar百度这个jar包名字很多资源最好是找最新的二、找到软件的安装路径下的bin目录;将下载的jar包放到bin目录下,并将datagrip64.exe.vmoptions、datagrip.exe.vmoptions两个文件末尾添加一行代码-javaagent:C:\JetBrains\DataGri…

    2022年4月14日
  • javaScript的基本语法结构「建议收藏」

    javaScript的基本语法结构「建议收藏」javaScript的基本语法结构一、javascript程序带的文本二、javascript中的注释三、字面量四、标识符和保留字标识符保留字五:可选的分号一、javascript程序带的文本vascript区分大小写。这就意味着他的关键字,变量,函数名和其他标识符必须始终保持一致的大小写格式二、javascript中的注释//这是单行注释/*这也是注释*///而这是另一个注释/**这是多行注释*每行开头的*字符不是必要的,只是为了美观*/三、字面量字面量(litera

    2022年10月9日
  • 交换机上uplink端口的作用是什么_uplink怎么用的

    交换机上uplink端口的作用是什么_uplink怎么用的PoE交换机是如今安防行业使用很广泛的一种设备,因为它是是一种为远程交换机(如IP电话或摄像机)提供电力和数据传输的交换机,具有非常重要的作用。而在使用PoE交换机时,就有朋友咨询到,有的PoE交换机上标着PoE,另外也看到有的标着PoE+。那么,PoE交换机与PoE+有什么区别呢?接下来就由飞畅科技的小编来为大家详细介绍下吧!1、什么是PoE交换机PoE交换机由IEEE802.3af标准定义,…

    2022年10月4日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号