Kotlin基本数值类型

2,544 阅读2分钟

基本数值类型

在 Kotlin 中,所有东西都是对象,你每定义的一个变量,其实 Kotlin 帮你封装了一个对象,这样可以保证不会出现空指针

表达式

val byte: Byte = 1        //字节 || 8位
val short: Short = 2      //短整型 || 16位
val int: Int = 3          //整型 || 32位
val long: Long = 4        //长整型 || 64位
val float: Float = 5f     //浮点型 || 32位
val double: Double = 6.0  //双精度浮点型 || 64位

进制数

支持十六进制数(0x),十进制数(123),二进制数(0b),不支持八进制数

数字类型字面常量的下划线

val a = 2_00_000
val b = 0xFF_EC_DE_5E
val c = 999_99_9999L
val d = 1234_5678_9012_3456L
val f = 0b11010010_01101001_10010100

显式转换

val a: Int = 2
a.toFloat()  // Float

toByte(): Byte
toShort(): Short
toInt(): Int
toLong(): Long
toFloat(): Float
toDouble(): Double
toChar(): Char

隐式转换

val a: Int = 2
val b = 2f + a   // ->  Float 类型

字符串(String)

    //定义
val str1 = """ 
     sdfjaklsdfjasldasdfadf
     sdfsdfadsf
"""
   // 模板
val a = 100
print("a = $a")
    
   // 字符串的遍历  str[index]
val str = "abcd"
for (c in str) {
     println(c) }
    
//可以用 + 操作符连接字符串
val s = "abcd" + 1  // s = abcd1     

字符型(Char)

用单引号 '' 表示,并且不能直接视为数字,但可以转换为数字

val char1: Char = 'a'

// 字符转义
\t => 表示制表符
\n => 表示换行符
\b => 表示退格键(键盘上的Back建)
\r => 表示键盘上的Enter键
\\ => 表示反斜杠
\' => 表示单引号
\" => 表示双引号
\$ => 表示美元符号,如果不转义在kotlin中就表示变量的引用了
其他的任何字符请使用Unicode转义序列语法。例:'\uFF00'

布尔类型(Boolean)

val a: Boolean = true
val b: Boolean = false

// 逻辑操作符
||   &&   !

装箱和拆箱

装箱是将值类型转换为引用类型,拆箱是将引用类型转换为值类型

// java代码
int a = 1;//基本类型a
Integer b = 1;//装箱类型b
b = a;//自动装箱
a = b;//自动拆箱

在Kotlin中,所有变量的成员方法和属性都是对象,当需要一个可为 null 的引用时, 就会触发装箱操作, 装箱操作不保持对象的同一性。

val a: Int? = 1000//装箱
val b: Int = 1000
val c: Int = 1000
println(a === b)//结果为false
println(b === c)//结果为true

在 Kotlin 中,三个等号 === 表示比较对象地址,两个 == 表示比较两个值大小

val aa: Int = 2
println(aa === aa) // 输出“true”
val bbb: Int? = aa
val ccc: Int? = a
println(bbb === ccc) // !!!输出“false”!!!
println(bbb == ccc) // !!!输出“true”!!!