目录
一、运算符等价于方法
Scala中运算符即方法、方法即运算符。Scala中运算符其实是普通方法调用的另一种表现形式,运算符的使用其实就是隐含地调用对应的方法。
(一)运算符即方法
op
运算符与.op
方法调用是等价的,op
表示运算符:+
、-
、*
、/
……- 演示
x + y
与x.+(y)
的等价性
(二)方法即运算符
1、单参方法
val str = "abcdef"
val x1 = str.indexOf('c')
val x2 = str indexOf 'c'
str.indexOf('c')
与 str indexOf 'c'
是等价的
2、多参方法
val x3 = str.substring(2, 4)
val x4 = str substring (2,4) // 如果参数有多个,需要用小括号包起来
str.substring(2, 4)
与str substring (2, 4)
是等价的
3、无参方法
val x5 = str.toUpperCase()
val x6 = str.toUpperCase // 方法调用时如果不需要传入任何参数,小括号可以省略
val x7 = str toUpperCase // 这种写法,如果没有参数,则括号不用写