Kotlin 语言学习(4) - 数据类、类委托 及 object 关键字
Kotlin 语言学习(5) - lambda 表达式和成员引用
一、本文概要
二、基本数据类型和其它基本类型
2.1 基本类型:Int、Boolean 及其它
Java
把基本数据类型和引用类型做了区分:
- 基本数据类型,例如
int
的变量直接存储了它的值,我们不能对这些值调用方法,或者把它们放到集合中。 - 引用类型的变量存储的是指向包含该对象的内存地址的引用。
Kotlin
不区分基本数据类型和引用类型,它使用的永远是一个类型(例如Int
),此外,你还能对一个数字类型的值调用方法。
在运行时,数字类型会尽可能地使用最高效的方式来表示,大多数情况下,对于变量、属性、参数和返回类型,Kotlin
的Int
类型会被编译成Java
基本数据类型int
。唯一不可行的例外是泛型类,例如集合,用作泛型类型参数的基本数据类型会被编译成对象的Java
包类型。
对应到Java
基本数据类型的类型完整列表如下:
- 整数类型:
Byte
、Short
、Int
、Long
- 浮点数类型:
Float
、Double
- 字符类型:
Char
- 布尔类型:
Boolean
像Int
这样的Kotlin
类型在底层可以轻易地编译成对应的Java
基本数据类型。而在Kotlin
中使用Java
声明时,Java
基本数据类型会变成非空类型,因为它们不能持有null
值。