Kotlin速记-数据类型

基本数据类型

Kotlin 的基本数值类型包括 Byte、Short、Int、Long、Float、Double 等。不同于 Java 的是,字符不属于数值类型,是一个独立的数据类型。

类型位宽度
Byte8
Short16
Int32
Long64
Float32
Double64

类型转换

较小类型并不是较大类型的子类型,较小的类型不能隐式转换为较大的类型

  • toByte(): 转换为 Byte 类型
  • toShort(): 转换为 Short 类型
  • toInt(): 转换为 Int 类型
  • toLong(): 转换为 Long 类型
  • toFloat(): 转换为 Float 类型
  • toDouble(): 转换为 Double 类型
  • toChar(): 转换为 Char 类型
val b : Byte = 1
// val i :Int = b   报错 error: type mismatch: inferred type is Byte but Int was expected
val i :Int = b.toInt() // val i :Int = b
val l = 1L + 3 // Long + Int => Long 这是正确的

布尔

Boolean 类型表示,它有两个值:true 和 false。

位操作符

  • shl(bits) – 左移位 (Java’s <<)
  • shr(bits) – 右移位 (Java’s >>)
  • ushr(bits) – 无符号右移位 (Java’s >>>)
  • and(bits) – 与
  • or(bits) – 或
  • xor(bits) – 异或
  • inv() – 反向

比较两个数字

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

val a = 6666
print(a === a)true

// 经过了装箱,创建了两个不同的对象
val boxedA: Int? = a
val anotherBoxedA: Int? = a
​
// 虽然经过了装箱,但是值是相等的,都是 6666
println(boxedA === anotherBoxedA) //  false,值相等,对象地址不一样
falseprintln(boxedA == anotherBoxedA) // true,值相等
true

数组

ByteArray, ShortArray, IntArray

数组用类 Array 实现,并且还有一个 size 属性及 get 和 set 方法,由于使用 [] 重载了 get 和 set 方法,通过下标获取或者设置数组对应位置的值。

数组的创建两种方式:一种是使用函数 arrayOf();另外一种是使用工厂函数。

// 数组的两种创建方式
// 1:[1,2,3]
val a = arrayOf(1, 2, 3)
// 2:[0,2,4]
val b = Array(3, { i -> (i * 2) })// 取值
println(a[0])    // 输出结果:1
println(b[1])    // 输出结果:2

字符串

val str = "str"
for (s in str) {
    print(s)
}
str
​
// 多行字符串
val str = """
    字符串
    字符串
    字符串
    字符串
"""
print(str)
    字符串
    字符串
// 删除多余的空格
print(str.trimMargin())
    字符串
    字符串

字符串模板(插值)

字符串可以包含模板表达式 ,即一些小段代码,会求值并把结果合并到字符串中。 模板表达式以美元符($)开头,由一个简单的名字构成:

val name = "Example"
println("name is $name")
name is Example
​
println("name is $name, name length is ${name.length}")
name is Example, name length is 7// 在原生字符串中表示字面值 $ 字符
val price = "${'$'}0.66"
println(price)
​
$0.66
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值