package com.scala.A
/**
* 控制抽象(主要争对函数参数):值调用和名调用
**/
object scala_function_05_0 {
def main(args: Array[String]): Unit = {
//------------------------------------------------------------------------------------------------------------------
/** 1)传值参数 */
def f0(a: Int): Unit = {
println("a=" + a)
println("a=" + a)
println("a=" + a)
}
f0(12)
//------------------------------------------------------------------------------------------------------------------
/** f1调用一次,把f1的值传入f0 */
def f1(): Int = {
println("f1..")
13
}
f0(f1())
println("--------")
//------------------------------------------------------------------------------------------------------------------
/** 2)真正的控制抽象:传名参数(传的是可执行代码块) */
/** :=>Int表示的就是返回值是Int类型的代码块(没有参数类型,但是有返回值) */
def f2(a: => Int): Unit = {
println("a=" + a)
println("a=" + a)
}
/** 把f1传给f2 */
f2(f1())
println("--------")
f2(14)
println("--------")
/** 把这个代码块传给f2 */
f2({
println("这是一个代码块")
29
})
//------------------------------------------------------------------------------------------------------------------
}
}
Scala-控制抽象(主要争对函数参数):值调用和名调用
最新推荐文章于 2022-04-15 16:56:31 发布
本文介绍了Scala中函数参数的两种调用方式:传值参数和传名参数(控制抽象)。通过示例展示了如何使用f0、f1和f2等函数,解释了值调用传递实参的值,而名调用则是传递可执行代码块。文中还演示了如何将函数作为参数传递给其他函数,以及直接传入代码块执行的用法。
74

被折叠的 条评论
为什么被折叠?



