首页 > 其他 > 详细

scala for循环

时间:2017-06-21 13:17:12      阅读:409      评论:0      收藏:0      [点我收藏+]

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循环

原文:http://www.cnblogs.com/guazi/p/7058566.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!