Scala-控制抽象(主要争对函数参数):值调用和名调用

本文介绍了Scala中函数参数的两种调用方式:传值参数和传名参数(控制抽象)。通过示例展示了如何使用f0、f1和f2等函数,解释了值调用传递实参的值,而名调用则是传递可执行代码块。文中还演示了如何将函数作为参数传递给其他函数,以及直接传入代码块执行的用法。
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
    })
    //------------------------------------------------------------------------------------------------------------------
  }


}

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

文文鑫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值