📜  Kotlin 运算符(1)

📅  最后修改于: 2023-12-03 14:43:42.302000             🧑  作者: Mango

Kotlin 运算符

Kotlin 是一个现代化的编程语言,它提供了各种类型的运算符,以便程序员可以更方便地进行算术、逻辑和比较操作。

算术运算符

Kotlin 支持以下算术运算符:

  • 加法 +
  • 减法 -
  • 乘法 *
  • 除法 /
  • 取余 %

这些运算符的用法与其他编程语言的用法相同,例如:

val a = 10
val b = 5
val c = a + b // 结果为 15
val d = a - b // 结果为 5
val e = a * b // 结果为 50
val f = a / b // 结果为 2
val g = a % b // 结果为 0
比较运算符

与其他编程语言一样,Kotlin 支持以下比较运算符:

  • 等于 ==
  • 不等于 !=
  • 大于 >
  • 小于 <
  • 大于等于 >=
  • 小于等于 <=

例如:

val a = 10
val b = 5
val c = a == b // 结果为 false
val d = a != b // 结果为 true
val e = a > b // 结果为 true
val f = a < b // 结果为 false
val g = a >= b // 结果为 true
val h = a <= b // 结果为 false
逻辑运算符

Kotlin 支持以下逻辑运算符:

  • &&
  • ||
  • !

例如:

val a = true
val b = false
val c = a && b // 结果为 false
val d = a || b // 结果为 true
val e = !a // 结果为 false
位运算符

Kotlin 支持以下位运算符:

  • and
  • or
  • 异或 xor
  • 取反 inv
  • 左移 shl
  • 右移 shr
  • 有符号右移 ushr

例如:

val a = 0b1010 // 10
val b = 0b1100 // 12
val c = a and b // 结果为 0b1000,即 8
val d = a or b // 结果为 0b1110,即 14
val e = a xor b // 结果为 0b0110,即 6
val f = a.inv() // 结果为 0b11111111111111111111111111110101,即 -11
val g = a shl 2 // 结果为 0b101000,即 40
val h = b shr 2 // 结果为 0b0011,即 3
val i = a ushr 1 // 结果为 0b0101,即 5
运算符重载

Kotlin 允许程序员在自己的类中重载运算符,以更方便地使用自定义类型的对象。这些运算符包括算术运算符、比较运算符、逻辑运算符和位运算符。

例如:

class Complex(val real: Double, val imaginary: Double) {

    // 重载加法运算符
    operator fun plus(other: Complex) =
        Complex(real + other.real, imaginary + other.imaginary)

    // 重载等于运算符
    override operator fun equals(other: Any?): Boolean {
        if (other is Complex) {
            return real == other.real && imaginary == other.imaginary
        }
        return false
    }
}

val x = Complex(1.0, 2.0)
val y = Complex(3.0, 4.0)
val z = x + y // 结果为 Complex(4.0, 6.0)
val b = x == y // 结果为 false

以上就是 Kotlin 运算符的简介,它们可以使程序员更方便地进行各种操作,从而提高代码的可读性和效率。