scala for循环

Posted 瓜子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了scala for循环相关的知识,希望对你有一定的参考价值。

scala for循环功能强大啊,for条件可以写各种表达式

通过一个demo来看一下,这个是一个讲yield关键字的demo:《Scala中的yield

object YieldDemo {

  private val files = (new java.io.File("./src/com/shang/yielddemo")).listFiles

  private def fileLines(file: java.io.File) =
    scala.io.Source.fromFile(file).getLines.toList

  def main(args: Array[String]): Unit = {
    println(files.size)

    for(file <- files){
      println(file.getName)
    }

    val lineLengths =
      for {
        file <- files
        if file.getName.endsWith(".txt")

        line <- fileLines(file)
        trimmedLine = line.trim
        if trimmedLine.matches(".*棒.*")
      } yield line + ":合计" + trimmedLine.length + "个字。"

    lineLengths.foreach(println)
  }
}

输出:

2
demotxt.txt
YieldDemo.scala
Let‘s go...太棒咯~:合计15个字。
Scala特棒!:合计8个字。

 

以上是关于scala for循环的主要内容,如果未能解决你的问题,请参考以下文章

scala3-for循环

for循环中的Scala println

Scala学习笔记(for循环相关)

Scala:for循环直到条件

scala快速入门之基础篇-循环语法

scala之for循环