Scala 闭包

1、代码

package com.yy.base


/**
 * 闭包
 */
object ClosureTest {
  def main(args: Array[String]): Unit = {
    
    //more是一个自由变量,其值及类型是在运行的时候得以确定的
    //x是类型确定的,其值是在函数调用的时候被赋值的
    //这样的函数称之为闭包:从开放到封闭的过程
    def add(more:Int) = (x:Int) => x+ more
    
    //给more赋值
    val add1 = add(1)
    //调用add函数
    println(add1(100))
  }
}

2、运行结果如下

101

你可能感兴趣的:(scala,闭包)