美文网首页
Kotlin基础认识 (7)运算符

Kotlin基础认识 (7)运算符

作者: 狼性代码人 | 来源:发表于2019-05-23 17:41 被阅读0次

    一、算术运算符

    • 一元运算符
    运算符 名称 说明 例子
    - 取反符号 取反运算 b = -a
    ++ 自加一 先取值再加一,或先加一再取值 a++或++a
    -- 自减一 先取值再减一,或先减一再取值 a--或--a
    • 二元运算符
    运算符 名称 说明 例子
    + 求a加b的和,还可用于String类型,进行字符串连接操作 a + b
    - 求a减b的差 a - b
    * 求a乘b的积 a * b
    / 求a除b的商 a / b
    % 取余 求a除以b的余数 a % b
    • 算术赋值运算符
    运算符 名称 例子
    += 加赋值 a += b, a += b+3
    -= 减赋值 a -= b
    *= 乘赋值 a *= b
    /= 除赋值 a /= b
    %= 取余赋值 a %= b

    二、关系运算符

    运算符 名称 说明 例子
    == 等于 a等于b时返回true,否则返回false。可以应用于基本数据类型和引用类型,引用类型比较两个对象内容是否相等。==会调用equals函数实现比较 a==b
    != 不等于 与 == 相反 a!=b
    > 大于 a大于b时返回true,否则返回false a>b
    < 小于 a小于b时返回true,否则返回false a<b
    >= 大于或等于 a大于或等于b时返回true,否则返回false a>=b
    <= 小于或等于 a小于或等于b时返回true,否则返回false a<=b
    === 引用等于 用于引用类型比较,比较两个引用是否引用了同一个对象 a===b
    !== 引用不等于 与===相反 a!==b

    三、逻辑运算符

    运算符 名称 说明 例子
    ! 逻辑非 a为true时,值为false,a为false时,值为true !a
    && 逻辑与 ab全为true时,计算结果为true,否则为false。&&与&区别:如果a为false,则不计算b(因为不论b为何值,结果都为false) a&&b
    || 逻辑或 ab全为false时,计算结果为false,否则为true。||与|区别:如果a为true,则不计算b(因为不论b为何值,结果都为true) a||b

    四、位运算符

    运算符 名称 例子 说明
    inv 位反 x.inv() 将x的值按位取反
    and 位与 x and y 或 x.and(y) x与y位进行位与运算
    or 位与 x or y 或 x.or(y) x与y位进行位或运算
    xor 位与 x xor y 或 x.xor(y) x与y位进行位异或运算
    shr 位与 x shr y 或 x.shr(y) x右移y位,高位采用符号位补位
    shl 位与 x shl y 或 x.shl(y) x左移y位,低位用0补位
    ushr 位与 x ushr y 或 x.ushr(y) x右移y位,高位用0补位

    五、其他运算符

    运算符 名称 说明
    : 冒号 用于变量或常量类型声明,以及声明继承父类和实现接口。
    () 小括号 起到改变表达式运算顺序的作用,它的优先级最高。
    [] 中括号 索引访问运算符。
    . 引用号 调用函数或属性运算符。
    = 赋值号 赋值运算符。
    ? 可空号 标识一个可空类型。
    ?. 安全调用运算符 调用非空类型的函数或属性。
    ?: Elvis运算符 控制合并运算符。
    !! 非空断言 断言可空表达式为非空。
    :: 双冒号 引用类、属性或函数。
    .. 区间 标示一个范围区间
    -> 箭头 用来声明Lambda表达式。
    * 展开运算符 将数组传递给可变参数时使用。

    六、运算符优先级

    优先级 运算符
    1 小括号
    2 后缀运算符 ++、--、.、?.、?
    3 前缀运算符 -、+、++、--、!
    4 :、as、as?
    5 *、/、%
    6 +、-
    7 区间..
    8 中缀运算符
    9 Elvis运算符?:
    10 in、!in、is、!is
    11 <、>、<=、>=
    12 ==、!=、===、!==
    13 &&
    14 ||
    15 =、+=、-=、*=、/=、%=

    相关文章

      网友评论

          本文标题:Kotlin基础认识 (7)运算符

          本文链接:https://www.haomeiwen.com/subject/enrbzqtx.html