7.14. Operacje postfiksowe
Operacja postfiksowa polega na umieszczeniu operatora po wyrażeniu, którego dotyczy. Może być użyta w przypadku każdego identyfikatora. Spójrzmy na definicję klasy PostfixGreeting z pliku PostfixGreeting.scala, która zawiera definicje dwóch metod bezparametrowych.
Plik PostfixGreeting.scala: class PostfixGreeting(name: String) { def ! :String = "Hello "+name+"!" def welcome:String = "Welcome "+name }
Te metody mogą być wywoływane zarówno przy użyciu operacji postfiksowej, jak i w zwykły sposób.
scala> import language.postfixOpsimport language.postfixOps scala> val john = new PostfixGreeting("John") john: PostfixGreeting = PostfixGreeting@1367418 scala> john! res0: String = Hello John! scala> john.! res1: String = Hello John! scala> john.welcome res2: String = Welcome John scala> john welcome res3: String = Welcome John
![]() | Klauzula importu z wiersza |
Plik PostfixGreeting.scala:
class PostfixGreeting(name: String) {
def ! :String = "Hello "+name+"!"
def welcome:String = "Welcome "+name
}
import language.postfixOps
scala> val john = new PostfixGreeting("John")
john: PostfixGreeting = PostfixGreeting@1367418
scala> john!
res0: String = Hello John!
scala> john.!
res1: String = Hello John!
scala> john.welcome
res2: String = Welcome John
scala> john welcome
res3: String = Welcome John

