본문 바로가기

Programming/Scala

Scala - 함수를 사용할 때 (...) 과 {...} 의 차이






Scala 로 프로그래밍 하던 중에 궁금한 것이 생겼다.


함수를 사용할 때 (...) 과 {...} 둘 다 사용가능 한 것이었다.

하지만 어떤 경우는 컴파일이 되지 않았다.


왜 그런 것일까? 이 둘의 차이는 뭘까? 라는 의문이 생겼다.


예를 들어 아래와 같은 코드는 같은 일을 한다. 그리고 컴파일 에러도 생기지 않는다.


하지만 아래와 같은 코드는 컴파일 에러를 발생 시킨다.



그래서 아래와 같이 {...} 를 사용하면 문제가 생기지 않고 잘 작동함을 알 수 있다.


아하!!! 바로 차이는 (...) 과 {...} 의 차이는  expression 이 한개인가 아니면 여러개 (block of codes) 인가의 차이이다.

함수에 표현식을 여러개 넣고 싶다면 {...} 를 사용하고 한 개만 넣고 싶다면, (...) 를 사용하면 되는 것이다. :)


'Programming > Scala' 카테고리의 다른 글

Scala - apply 함수는 무슨 일을 하는 것일까?  (1) 2013.03.14
Scala - 함수를 정의 할 때 관례 (Convention)  (0) 2013.03.13
Scala Days - 스칼라 모임  (0) 2013.02.28
Scala 2.10 new features  (0) 2013.02.05
Set 간단 팁  (0) 2012.11.27