scala/basic

Scala Closure

wefree 2022. 10. 21. 19:56

코드

object ScalaApp {
  def runner(f: () => Int): Unit = {
    val out = f()
    println(out)
  }

  def sum(x: Int, y: Int): () => Int = {
    val inner = () => x + y
    inner
  }

  def main(args: Array[String]): Unit = {
    val f = sum(1, 2)
    runner(f)
  }
}

 

설명

python 의 Closure 와 비교해 보자