In Scala, all operators are method names.
[raj@Rajkumars-MacBook-Pro ~]$scala -deprecation -feature Welcome to Scala version 2.10.6 (Java HotSpot(TM) 64-Bit Server VM, Java 1.7.0_45). Type in expressions to have them evaluated. Type :help for more information. //#PS:70 //psn > a30 > a15 scala> /********************************************* | Example 1 : Infix Notation | **********************************************/ | | //Here '+' operator is a Method name | val sum = 1.+(2) <console>:6: warning: This lexical syntax is deprecated. From scala 2.11, a dot will only be considered part of a number if it is immediately followed by a digit. val sum = 1.+(2) ^ <console>:12: warning: This lexical syntax is deprecated. From scala 2.11, a dot will only be considered part of a number if it is immediately followed by a digit. val sum = 1.+(2) ^ sum: Double = 3.0 scala> scala> //Here we are using infix Notation scala> //where '.', '(' and ')' has been omitted scala> val sum = 1 + 2 sum: Int = 3 scala> | | /********************************************* | Example 2 : Postfix Notation | **********************************************/ | val myvar = 10.toString() myvar: String = 10 scala> scala> // '.', '(' & ')' can be omitted for methods with scala> // no arguments scala> val myvar = 10 toString <console>:7: warning: postfix operator toString should be enabled by making the implicit value scala.language.postfixOps visible. This can be achieved by adding the import clause 'import scala.language.postfixOps' or by setting the compiler option -language:postfixOps. See the Scala docs for value scala.language.postfixOps for a discussion why the feature should be explicitly enabled. val myvar = 10 toString ^ myvar: String = 10Note : Any method that ends with ':' always binds to the right
No comments:
Post a Comment