Kotlin 语言学习(4) - 数据类、类委托 及 object 关键字
Kotlin 语言学习(5) - lambda 表达式和成员引用
一、本文概要
二、函数和变量
2.1 函数
2.1.1 函数的基本构成
在Kotlin
中,函数的基本结构由四个部分构成:
- 函数名称
- 参数列表
- 返回类型
- 函数体
函数的声明以关键字 fun 开始,函数名称 紧随其后,接下来是括号括起来的 参数列表,参数列表的后面跟着 返回类型,返回类型和参数列表之间用冒号隔开,最后是函数体。
下面是一个比较大小的函数例子,上面谈到的四个部分构成如图中标注所示:
2.1.2 表达式和语句
在上面的例子中,if
是表达式,而不是语句,表达式和语句的区别在于:
- 表达式 有值,并且能作为另一个表达式的一部分使用。
- 语句 总是包含着它的代码块中的顶层元素,并且没有自己的值。
在Java
中,所有的控制结构都是语句,而在Kotlin
中,除了for
、do
和do/while
以外大多数控制结构都是表达式。
当函数体是由单个表达式构成时,可以用这个表达式作为完整的函数体,并且去掉花括号和return
语句,上面的例子就是这种情况,因此可以改写为:
- 如果函数体写在花括号中,我们说这个函数有 代码块体
- 如果它直接返回了一个表达式,它就有 表达式体
2.1.3 省略返回类型
对于 表达式体函数,可以省略返回类型,因为编译器会分析作为函数体的表达式,并把它的类型作为函数的返回类型,这种分析称为 类型推导。但是对于有返回值的 代码块体函数,必须显示地写出返回类型和