在 Kotlin 中,基本类型包含:数字、字符、布尔和数组。
数字
Type | Bit width |
---|---|
Double | 64 |
Float | 32 |
Long | 64 |
Int | 32 |
Short | 16 |
Byte | 8 |
注意在 Kotlin 中,数字没有隐式拓宽转换(如 Java 中 int 可以隐式转换为long),并且字符不是数字。
字符
字符用 Char 类型表示。它们不能直接当作数字。
布尔
布尔用 Boolean 类型表示,它有两个值:true 和 false。
内置的布尔运算有:
- || – 短路逻辑或
- && – 短路逻辑与
- ! - 逻辑非
数组
数组在 Kotlin 中使用 Array 类来表示,它定义了 get 和 set 函数(按照运算符重载约定这会转变为 [])和 size 属性,以及一些其他有用的成员函数。
可以使用库函数 arrayOf() 来创建一个数组并传递元素值给它,这样 arrayOf(1, 2, 3) 创建了 array [1, 2, 3]。 或者,库函数 arrayOfNulls() 可以用于创建一个指定大小、元素都为空的数组。
/* arrayOf(3, 4, 5) 创建一个数组并传递元素值 */
var arr = arrayOf(3, 4, 5)
/* intArrayOf(3) 创建一个int数组设置长度为3 */
var arr1 = intArrayOf(3)
arr1[0] = 1
arr1[1] = 2
arr1[2] = 3
/* arrayOfNulls<Int>(3) 创建一个大小为3,且各元素都为空的int数组 */
var arr2 = arrayOfNulls<Int>(3)
arr2[0] = 5
arr2[1] = 6
另一个选项是用接受数组大小和一个函数参数的工厂函数,用作参数的函数能够返回给定索引的每个元素初始值:
// 创建一个 Array<String> 初始化为 ["0", "1", "4", "9", "16"]
val asc = Array(5, { i -> (i * i).toString() })
字符串
字符串用 String 类型表示。字符串是不可变的。 字符串的元素——字符可以使用索引运算符访问: s[i]。 可以用 for 循环迭代字符串:
val str = "Hello Kotlin!"
for (c in str){
print(c)
}
输出为:
Hello Kotlin!
字符串模板
字符串可以包含模板表达式 ,即一些小段代码,会求值并把结果合并到字符串中。 模板表达式以美元符($)开头,由一个简单的名字构成:
val s = "Hello"
val str1 = "$s Kotlin!" // 求值结果为 "i = 10"
val str2 = "$str1.length is ${str1.length}"
println(str1)
println(str2)
输出为:
Hello Kotlin!
Hello Kotlin!.length is 13
ps:
//Kotlin的基本数值类型包括:Byte、Short、Int、Long、Float、Double、Char、Boolean、String
//定义方法分别如下:
var b: Byte = 1.toByte()
var s: Short = 10
var i: Int = 10
var l: Long = 10
var f: Float = 10.1f
var d: Double = 10.1
var c: Char = 'a'
var bool: Boolean = true
var str: String = "Hello Kotlin!"