0
스칼라를 배우고 있습니다 (그렇지만!)하지만 이해할 수없는 것이 있습니다. ":"로 끝나는 메소드 이름으로 올바른 연관 피연산자를 읽었습니다. 이해하기 쉽지만 add3To :라는 이름의 고유 한 연관 함수를 정의하려고합니다. 내가 바보 같은 실수를했다 (내가 확신)스칼라는 오른쪽 연관 피연산자를 이해합니다.
case class MyInt(x : Int) {
def add3 = x+3
def add3To:= x+3 // dont understand whats wrong here
}
val myInt = MyInt(4)
println(myInt add3) // working
println(add3To myInt) // not working
을 어쩌면 :
는 그 이유를 알고있는 구문 에러를 해달라고! 그러나 나는 그것을 보지 않는다.
감사합니다. 그것은 내가 올바른 연관이되고 오직 하나의 피연산자 (add3to myInt)를 취하는 메소드를 정의 할 수 없음을 의미합니까? 귀하의 방법도 내가 "3 addTo myInt"전화 캔트? – chrisf
@chrisf : 1) def add3To (mi : MyInt) = i.x + 3'을 정의하고이를'add3To (myInt)'로 부를 수 있습니다. 2)'addTo (mi : MyInt)'메소드를'Int'에 추가 할 수 있습니다 - ['implicit class'] (http://docs.scala-lang.org/sips/pending/implicit-classes.html)를보십시오. – senia