任何方法都是可以是操作符
:::info
在Scala中,操作符并不是特殊的语法,本质便是方法,同时任何方法都可以是操作符。
s.indexOf(‘o’)时,indexOf可视为方法
s indexOf ‘o’时,indexOf可视为操作符,此时使用的是操作符表示法
:::
例如:
1+2本质上和1.+(2)是同一回事
可以理解为,Int类中有一个名为+的方法,作为Int类的对象1自然可以调用其+方法
Tip:使用操作符表示法调用一个参数时,可以省略圆括号,当调用多个参数时,必须将这些参数放在圆括号中 如果方法有副作用的时候保留空的圆括号,比如println() 方法没有副作用时可以省掉这组圆括号,比如String调用toLowerCase
object test_stdin {
def main(args: Array[String]): Unit = {
println(1 + 2) //3
println(1.+(2)) //3
val s = "Hello World"
println(s.toLowerCase()) //hello world
println(s.toLowerCase) //hello world
}
}