Kotlin从入门到“放弃”(二)——函数

本文深入探讨Kotlin中的函数,包括基本函数定义、Lambda表达式、高阶函数如map、flatmap、reduce和fold的使用,以及如何通过扩展函数实现复合操作。通过实例讲解,帮助读者理解Kotlin的函数编程特性。
摘要由CSDN通过智能技术生成
写在开头

上一篇介绍了Kotlin的基本使用,发现这门语言主要还是面向函数进行编程,所以这一篇主要在函数方面介绍Kotlin。

基本函数

  Kotlin作为一个面向函数的编程语言,函数的使用自然是最基本的,上一篇的main函数就是函数式语言的体现。最简单的调用函数的方法如下:

fun main(vararg arg: String){
    println(add(1, 2))
}

fun add(a: Int, b: Int): Int{
    return a + b
}

  由上面的自定义函数add可知,函数的定义方式是fun <函数名>(<参数>)[: <返回类型>] { <代码块>},特别指出kotlin函数的返回类型如上面的add所示在参数后面添加表示,如果没有返回值的话可以不用写或者可以把Int换成Unit。当函数代码块中代码就是返回值就像add,可以直接写成单一表达式,如下。

fun add(a: Int, b: Int) = a + b

  再来说一下参数,Kotlin中的参数使用Pascal符号定义,参数与定义变量常量不同,必须指定类型。这一点毫无疑问与java相同,但与java相同的是kotlin函数参数可以有默认值,当该参数有默认值时调用处该参不是必传的,不传就是默认值,这就是kotlin中变相的函数重载。

fun main(vararg arg: String){
    println(add(1))
}
fun add(a: Int, b: Int = 5) = a + b

Lambda表达式

  Kotlin中支持并使用了大量的Lambda表达式,谷歌使用Kotlin作为Android开发的一个官方语言据说也是因为能够使用这个表达式(手动滑稽)。java也在jdk8之后支持了Lambda表达式(λ),先以java为例说明。
  λ表达式其实就是匿名函数在java中可以说是内部匿名类,一般语法是(参数)->{程序主体}。在java中能够作为λ表达式传入的一种形式就是函数式接口,函数式接口是只有一个抽象方法的接口,所以Runnable接口就是符合这么一个特

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值