Kotlin的基本数值类型包括Byte、Short、Int、Long、Float、Double等。字符不属于数值类型,是一个独立的数据类型。
比较两个数字
在Kotlin中,三个等号===表示比较对象地址,两个==表示比较两个值大小。
类型转换
由于不同的表示方式,较小类型并不是较大类型的子类型,较小的类型不能隐式转换为较大的类型;
每种数据类型都有下面的这些方法:
toByte(): Byte
toShort(): Short
toInt(): Int
toLong(): Long
toFloat(): Float
toDouble(): Double
toChar(): Char
字符
Kotlin中的char不能直接和数字操作,char必须是单引号'包含起来的。
布尔
布尔用Boolean类型表示,它有两个值:true和false。
内置布尔运算:
|| – 短路逻辑或
&& – 短路逻辑与
! - 逻辑非
数组
数组用类Array实现,并且还有一个size属性及get和set方法,由于使用[]重载了get和set方法,所以我们可以通过下标很方便的获取或者设置对应位置的值。
数组创建两种方式:一种是使用函数arrayOf();另一种是使用工厂函数;
//[1,2,3]
val a = arrayOf(1, 2, 3)
//[0,2,4]
val b = Array(3, { i -> (i * 2) })
除了类Array,还有ByteArray、ShortArray、IntArray,用来表示各个类型的数组,省去了装箱操作,因此效率更高,其用法同Array一样。
字符串
Stirng是不可变的,方括号[]语法可以很方便的获取字符串中的某个字符,也可以通过for循环来遍历;
Kotlin支持三个引号"""扩起来的字符串,支持多行字符串。
String 可以通过trimMargin()方法来删除多余的空白。
字符串模板
字符串可以包含模板表达式,即一些小段代码,会求值并把结果合并到字符串中。模板表达式以美元符$开头,由一个简单的名字构成;或者用花括号扩起来的任意表达式;