美文网首页
Scala的操作符

Scala的操作符

作者: Grits | 来源:发表于2018-02-28 17:00 被阅读0次

    Scala 操作符(Operators)

    Scala的操作符都是方法
    任何方法也都可以被看成是操作符

    操作符标记法(Operator notation)

    • infix: take two operands
    • prefix: is unary, take just one operand
    • postfix: is unary, take just one operand

    关于方法的调用

    Scala中,方法的使用有个约定:如果这个方法有副作用(side-effects),调用该方法时加上圆括号(parentheses);如果这个方法没有副作用,调用该方法时不加圆括号

    Scala的 == 操作

    Scala的 == 操作符,用来比较内容,即便是不同的对象,只要内容一致,就会判断相等
    Scala使用eq方法来判断引用是否相等,也就是判断栈里面的变量是否指向同一个堆中的对象

    操作符的优先级以及结合性(precedence and associativity)

    操作符优先级

    Scala操作符的优先级取决于该操作符的第一个字符

    // 优先级列表
    (all other special characters)
    * / %
    + -
    :
    = !
    < >
    &
    ^
    |
    (all letters)
    (all assignment operators)
    

    优先级的例外规则

    如果一个操作符以一个等号(=)结束,且不是如下操作符之一(>=, <=, ==, !=),此时这个操作符的优先级等同于简单的赋值操作(assignment =)

    操作符结合性

    Scala操作符的结合性取决于操作符的最后一个字符。任何方法以“:”结尾,都是右结合性。如下所示:

    val list = List(1,2,3,4)
    5 :: list
    // list.::(5)
    

    相关文章

      网友评论

          本文标题:Scala的操作符

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