快速入门Scala③ scala循环操作

for循环操作

scala> for (i <- 1 to 20){
  println(i)
}
scala> var num=1.to(20)
for (i <- num){
  println(i)
}

嵌套循环

scala> for(i <- 1 to 3 ; j<- 1 to 5){print("*"); if(j==5)println()}

循环嵌套守卫

scala> for(i <- 1 to 20 if i%2==0) println(i)

推导式

scala> for(i <- 1 to 20 if i%2==0) yield i *2

while循环

scala> var i = 0
while (i < 10) {
  println(i)
  i += 1
}

break() 和continue

  • scala中,没有break/continue关键字
  • 如果一定使用break/continue,就需要使用scala.util.control包的Break类的breablebreak方法

实现break

// 导入scala.util.control包下的Break
import scala.util.control.Breaks._
 breakable {
      for (i <- 1 to 100) {
        if (i >= 50) break()
        else println(i)
      }
    }

实现 continue

用法:

  • continue 的实现与break类型,单有一点不同:
  • 实现continue是用breakbale{}将for表达式循环包含起来

示例

打印1-100的数字,使用for表达式来遍历,如果数字能整除10,不打印

// 导入scala.util.control包下的Break    
import scala.util.control.Breaks._
for(i <- 1 to 100 ) {
   breakable{
       if(i % 10 == 0) break()
       else println(i)
  }
}

1

发布了88 篇原创文章 · 获赞 99 · 访问量 21万+

猜你喜欢

转载自blog.csdn.net/qq_43791724/article/details/105128552