scala for循环与break语句

7 篇文章 0 订阅

for循环

object s5_loop {
  def main(args: Array[String]): Unit = {

    // for loop

    for (a <- 1 to 10) {
      print(a + " ")
    }
    println()


    // until不包括边界值
    for (a1 <- 1 until 10) {
      print(a1 + " ")
    }
    println()


    // while loop
    var b = 0
    while (b < 10) {
      b += 1
      print(b + " ")
    }
    println()

    // do while
    var c = 0
    do {
      c += 1
      print(c + " ")
    } while (c < 10)
    println()

    // 字符串 for循环
    val s: String = "scala"
    for (i <- 0 until s.length) {
      print(s(i) + "-")
    }
    println()

    for (i <- s) {
      print(i + "*")
    }
    println()

    for (i <- 1 to 3; j <- 1 to 3 if i != j) {
      print(10 * i + j + " ** ")
    }
    println()

    var arr = {
      for (i <- 1 to 10) yield i * 10
    }
    println(arr)


  }
}

 

 

scala没有直接的break和continue语句,为了更好的适应函数式编程

可以使用Break对象来达到目的,或者通过定义外部flag标志的方式实现循环终止跳出的功能


import scala.util.control._

object s15_break {
  def main(args: Array[String]) {
    val numList = List(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)

    val loop = new Breaks
    loop.breakable {
      for (a <- numList) {
        println("Value of a: " + a)
        if (a == 4) {
          loop.break
        }
      }
    }


    // 在if结构中去掉continue和break,更好的适应函数式编程
    var flag = true
    for (b <- numList) {
      if (b == 5) {
        flag = false
      }
      if (flag) {
        println("Value of b: " + b)
      }
    }
    println("After the loop")
  }

}


 

 

 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值