Kotlin 数据类型
Kotlin 数据类型
在 Kotlin 中,变量的 类型 由其值决定:
实例
fun main() {
val myNum = 5 // Int
val myDoubleNum = 5.99 // Double
val myLetter = 'D' // Char
val myBoolean = true // Boolean
val myText = "Hello" // String
println(myNum)
println(myDoubleNum)
println(myLetter)
println(myBoolean)
println(myText)
}
但是,您从上一章中了解到,如果需要,可以指定类型:
实例
fun main() {
val myNum: Int = 5 // Int
val myDoubleNum: Double = 5.99 // Double
val myLetter: Char = 'D' // Char
val myBoolean: Boolean = true // Boolean
val myText: String = "Hello" // String
println(myNum)
println(myDoubleNum)
println(myLetter)
println(myBoolean)
println(myText)
}
有时必须指定类型,但通常不指定。无论如何,知道不同类型代表什么总是好的。
稍后,您将了解有关 何时 需要指定类型的更多知识。
数据类型分为不同的组:
- Numbers
- Characters
- Booleans
- Strings
- Arrays
Numbers
数字类型分为两组:
整数类型存储整数,正数或负数(如 123 或 -456),不带小数。有效类型有 Byte
、Short
、Int
和 Long
。
浮点类型表示带有小数部分的数字,包含一个或多个小数。有两种类型:Float
和 Double
。
Int
返回,对于浮点数,它通常以 Double
返回。整型
Byte
Byte
字节数据类型可以存储从 -128 到 127 的整数。当您确定该值将在 -128 和 127 之间时,可以使用它代替 Int
或其他整数类型来节省内存:
实例
fun main() {
val myNum: Byte = 100
println(myNum)
}
Short
Short
短整型数据类型可以存储从 -32768 到 32767 的整数:
实例
fun main() {
val myNum: Short = 5000
println(myNum)
}
Int
Int
整型数据类型可以存储从 -2147483648 到 2147483647 的整数:
实例
fun main() {
val myNum: Int = 100000
println(myNum)
}
Long
Long
长整型数据类型可以存储从 -9223372036854775808 到 9223372036854775808 的整数。当 Int 不足以存储值时,使用此选项。也可以选择以 "L" 结束该值:
实例
fun main() {
val myNum: Long = 15000000000L
println(myNum)
}
Int 和 Long 之间的区别
一个整数是一个 Int
,只要它最大是 2147483647。如果超出这个范围,它被定义为 Long
:
实例
val myNum1 = 2147483647 // Int
val myNum2 = 2147483648 // Long
浮点型
浮点类型表示带小数的数字,例如 9.99 或 3.14515。
Float
Float
数据类型可以存储 3.4e−038 至 3.4e+038 中的小数。请注意,该值应以 "F" 结尾:
实例
fun main() {
val myNum: Float = 5.75F
println(myNum)
}
Double
Double
数据类型可以存储 1.7e−308 至 1.7e+038 中的小数:
实例
fun main() {
val myNum: Double = 19.99
println(myNum)
}
使用 Float
还是 Double
?
Float
的精度只有 6 或 7 位小数,而 Double
的精度约为 15 位。因此,在大多数计算中使用 Double 更安全。科学数字
浮点数也可以是带有 "e" 或 "E" 的科学数字,表示 10 的幂:
实例
fun main() {
val myNum1: Float = 35E3F
val myNum2: Double = 12E4
println(myNum1)
println(myNum2)
}
Booleans
Boolean
布尔数据类型值只能是 true
或 false
:
实例
fun main() {
val isKotlinFun: Boolean = true
val isFishTasty: Boolean = false
println(isKotlinFun) // Outputs true
println(isFishTasty) // Outputs false
}
布尔值主要用于条件测试,您将在后面的章节中了解更多相关知识。
Characters
Char
数据类型用于存储 单 个字符。char 值必须用 单引号 括起来,如 'A' 或 'c':
实例
fun main() {
val myGrade: Char = 'B'
println(myGrade)
}
与 Java 不同,您不能使用 ASCII 值来显示某些字符。值 66 在Java中会输出一个 "B",但在 Kotlin 中会生成错误:
实例
val myLetter: Char = 66
println(myLetter) // Error
Strings
String
字符串数据类型用于存储字符序列(文本)。字符串值必须用 双引号 括起来:
实例
fun main() {
val myText: String = "Hello World"
System.out.println(myText)
}
您可以在 Kotlin Strings 章节学习到更多 String 的知识。
Arrays
数组用于在单个变量中存储多个值,而不是为每个值声明单独的变量。
您可以在 Kotlin Arrays 章节学习到更多 Arrays 的知识。
Type Conversion
类型转换是指将一种数据类型的值转换为另一种类型。
在 Kotlin 中,数字类型转换不同于 Java。例如,无法使用以下代码将 Int
类型转换为 Long
类型:
实例
fun main() {
val x: Int = 5
val y: Long = x
println(y)
}
要将数字数据类型转换为其他类型,必须使用以下函数之一:
toByte()
toShort()
toInt()
toLong()
toFloat()
toDouble()
toChar()
实例
fun main() {
val x: Int = 5
val y: Long = x.toLong()
println(y)
}