⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lazy-exprs.scala

📁 JAVA 语言的函数式编程扩展
💻 SCALA
字号:
object TestExpressions {  def patmatchScrut {    lazy val z1: Option[String] = { println("forced <z1>"); Some("lazy z1") }        val res = z1 match {      case Some(msg) => msg      case None => "failed"    }    print("lazy val in scrutinee: ")    if (res == "lazy z1")      println("ok")    else      println("failed")  }  def patmatchCase {    val t: Option[String] = Some("test")    val res = t match {      case Some(msg) =>         lazy val z1 = { println("forced <z1>"); "lazy z1" }        z1          case None => "failed"    }    print("lazy val in case: ")    if (res == "lazy z1")      println("ok")    else      println("failed")  }  def patmatchPat {    lazy val Z1 = { println("forced <z1>"); "lazy Z1" }    print("lazy val in case: ")    val t: Option[String] = Some("lazy Z1")    t match {      case Some(Z1) =>         println("ok")          case None =>        println("failed")    }  }  def ifcond {    lazy val z1 = { println("forced <z1>"); "lazy z1" }    print("lazy val in if condition: ")    if (z1 == "lazy z1")      println("ok")    else      println("failed")  }  lazy val LazyField = { println("forced LazyField"); "LazyField" }  def testPatMatchField {    print("lazy val in pattern: ")    val t: Option[String] = Some("LazyField")    t match {      case Some(LazyField) =>         println("ok")          case None =>        println("failed")    }  }      lazy val (x, y) = ({print("x"); "x"}, {print("y"); "y"})  def testPatLazyVal {    println("lazy val with patterns:")    print("x and y: ")    println("(" + x + ", " + y + ")")    lazy val (x1, y1) = ({print("x1"); "x1"}, {print("y1"); "y1"})    print("x1 and y1: ")    println("(" + x1 + ", " + y1 + ")")  }  def test {    patmatchScrut    patmatchCase    patmatchPat    ifcond    testPatMatchField    testPatLazyVal  }}object Test extends Application {  TestExpressions.test}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -