Kotlin - 操作符重载

本文仅记录Kotlin中的一些操作符重载列表,以方便查阅。

一元操作

表达式 对应函数
+a a.unaryPlus()
-a a.unaryMinus()
!a a.not()
a++ a.inc()
a-- a.dec()

二元操作

表达式 对应函数
a + b a.plus(b)
a - b a.minus(b)
a * b a.times(b)
a / b a.div(b)
a % b a.rem(b)、a.mod(b)(已弃用)
a..b a.rangeTo(b)
a in b b.contains(a)
a !in b !b.contains(a)
a[ i ] a.get(i)
a[ i, j ] a.get(i, j)
a[ i_1, ......, i_n ] a.get(i_1, ......, i_n)
a[ i ] = b a.set(i,b)
a[ i, j ] = b a.set(i,j,b)
a[ i_1, ......, i_n ] = b a.set(i_1, ......, i_n, b)
a() a.invoke()
a(i) a.invoke(i)
a(i, j) a.invoke(i, j)
a(i_1, ......, i_n) a.invoke(i_1, ......, i_n)
a += b a.plusAssign(b)
a -= b a.minusAssign(b)
a *= b a.timesAssign(b)
a /= b a.divAssign(b)
a %= b a.modAssign(b)
a == b a?.equals(b) ?: (b === null)
a != b !(a?.equals(b) ?: (b === null))
a > b a.compareTo(b) > 0
a < b a.compareTo(b) < 0
a >= b a.compareTo(b) >= 0
a <= b a.compareTo(b) <= 0

你可能感兴趣的:(Kotlin - 操作符重载)