类型声明

声明变量时类型名放在变量后面

  1. val a: String = "I am Kotlin"

这种声明方式的优势:

  • 更好的可读性
  • 利用使用一些良好的语法特性,比如省略类型声明

    类型推导

    kotlin支持类型推导。类型推导指的是哪怕代码中没有写上变量的类型,编译器也可以自动推导出变量的类型。
    val string = "I am Kotlin"
    val int = 123
    val long = 123L
    

    声明函数返回值类型

    kotlin中函数可以分为:表达式函数和代码块函数。
    // 代码块函数形式
    fun sum(x: Int, y: Int): Int { return x + y } 
    // 表达式函数形式
    fun sum(x: Int, y: Int) = x + y
    
    代码块函数不支持自动推导返回值类型,因此除了返回Unit了,必须显示声明返回值类型。
    表达式函数支持自动推导返回值类型,但是递归函数也需要声明返回值类型。
    综上,有返回值的代码块函数、表达式递归函数必须显示声明返回值类型。

    为了代码的可读性和输出类型的可控性,公有方法的返回值也建议声明返回值类型。

高阶函数

如何理解高阶函数:
以其他函数作为参数或返回值的函数