0
点赞
收藏
分享

微信扫一扫

kotlin-小抄(二)操作符和重载


操作符优先级表

kotlin-小抄(二)操作符和重载_JVM

  • eg:重载操作符

data class Counter(var index : Int)
// 实现重载必须使用operator修饰符修饰一个从重载操作符函数
operator fun Counter.plus(increment : Int) :Counter {
return Counter(index + increment)
}

使用
val counter = Counter(1)
val resul = counter.plus(10)
println(result)

相等和不相等操作符

  • 引用相等 (不可重载)
  • ===
  • !==
  • 结构相等
  • ==
  • !=

a == b <=> a?.equals(b)?:(b===null)
a != b <=> !(a?.equals(b)?:(b===null))

Elvis操作符 ?:

  • 精简版的三元运算符
  • 主要用来做null安全检查

result = x ?: 0 <=> val result = if (x!==null)  x else 0

包声明

  • JVM平台会默认导入下面的包

java.lang.*
kotlin.jvm.*

  • js平台上会默认导入下面的包

kotlin.js.*


举报

相关推荐

0 条评论