一、作用
Kotlin 的发展势如破竹,Google Play 商店中排名前100的 App 里,有超过 60% 已经使用了 Kotlin。
使用 Kotlin 开发的代码量可能会比 Java 开发的减少 50%,甚至更多。
二、相关概念
1. 历史
Kotlin 是 JetBrains 公司开发与设计的。2017年 Google 官宣 Kotlin 正式成为 Android 一级开发语言,Android Studio 钟也加入了对 Kotlin 的支持,Kotlin 自此大放异彩。
变量和函数是编程之本。
2. 变量
定义变量:在变量前声明两种关键字:val(value
)和 var(variable
)
val
声明一个不可变的变量,这种变量在初始赋值之后就再也不能重新赋值,对应 Java 中的final
变量var
声明一个可变的变量,在初始赋值之后仍然可以再被重新赋值,对应 Java 中的非final
变量
Kotlin 有出色的类型推导机制。可隐式声明变量
fun main() {
val a = 10
println("a=" + a)
}
小技巧:永远使用
val
来声明一个变量,当val
无法满足需求时,再使用var
,这样设计处理的程序会更加健壮,更加符合高质量的编码规范。
但 Kotlin 的类型推导机制并不总是可以正常工作,比如对一个变量延迟赋值的话,Kotlin 就无法推导它的类型,此时需要显式声明才行。
fun main() {
var a: Int = 10
a = a * 10
println("a=" + a)
}
Kotlin 完全抛弃了 Java 中的基本数据类型,全部使用对象数据类型。
3.函数
一个 Kotlin 函数的基本组成
fun methodName(param1: Int, param2: Int): Int{
return 0
}
小示例
fun main() {
val a = 10
val b = 30
val largerNumber = largerNumber(a, b)
println(largerNumber)
}
fun largerNumber(num1: Int, num2: Int): Int {
return max(num1, num2)
}
4.Kotlin 中的语法糖
(1)函数中只有一行代码时简化程序(单行代码函数)
当一个函数中只有一行代码时,Kotlin 允许我们不必编写函数体,可以直接将唯一的一行代码写在函数定义的尾部,中间用等号连接即可。
fun largerNumber(num1: Int, num2: Int): Int {
return max(num1, num2)
}
省略了 return 关键字
简化为:
fun largerNumber(num1: Int, num2: Int): Int = max(num1, num2)
不需显式地声明函数返回值类型
简化为:
fun largerNumber(num1: Int, num2: Int) = max(num1, num2)