Scala方法

一、方法

object DefTest {
  def main(args: Array[String]): Unit = {
    // 1、方法(def 方法名(参数名:参数类型*):返回值类型(Unit为无返回值)) = {方法体}
    def add(a: Int, b: Int): Int = {
      a + b
    }

    println(add(1, 2))
    println("=====================================")

    // 2、默认参数
    def addDefaultParams(a: Int = 10, b: Int = 1): Int = {
      a + b
    }

    println(addDefaultParams(b = 10))
    println("=====================================")

    // 3、可变参数(如果有多类参数,需要将可变参数放到最后一位)
    def addChangeParams(str: String, num: Int*): Unit = {
      println(str + ":" + num)
    }

    addChangeParams("hello", 1, 2, 3, 4)
    println("=====================================")

  }

}

二、函数

什么是函数
1、函数是一个对象(变量)
2、类似于方法,函数也有输入参数和返回值
3、函数定义不需要使用def定义
4、无需指定返回值类型

函数和方法的区别
1、方法是隶属于类或者对象的,在运行时,它是加载到JVM的方法区中. 但是函数本身就是一个对象
2、可以将函数对象赋值给一个变量,在运行时,它是加载到JVM的堆内存中
3、函数是一个对象,继承自FunctionN,函数对象有apply,curried,toString,tupled这些方法。方法则没有

将方法转换为函数

val a = add _
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值