반응형
Functions
- 이름을 가지지지 않는 함수, 가지는 함수 둘 다 존재한다.
- parameter를 안가질 수도 있고, 한개 이상의 parameter을 가질 수 있다.
-이름을 가지지 않는 함수
1
|
(x:Int) => x*7-5
|
cs |
-이름을 가지는 함수
1
2
|
val name = (x:Int) => x*7-5
println(name(3))
|
cs |
![](https://blog.kakaocdn.net/dn/KHMZK/btrfXynlkb3/ObcPhfPGABfw6wa9YbxxhK/img.png)
- parameter을 가지지 않는 함수
1
2
|
val name = () => 2
println(name())
|
cs |
![](https://blog.kakaocdn.net/dn/bHr4ce/btrf1hFnJJ4/RSTA6E1EKls3klHRTtivSK/img.png)
이때, 함수에 parameter가 없기에 함수를 호출할 때, parameter가 있는 것처럼 호출한다면, error가 난다.
1
2
|
val name = () => 2
println(name(2))
|
cs |
![](https://blog.kakaocdn.net/dn/HehuW/btrfU39D7Op/AQP88cXZQs5fif8YJcG0Wk/img.png)
- parameter을 한개 가지는 함수
1
2
|
val name = (x:Int) => x
println(name(6))
|
cs |
![](https://blog.kakaocdn.net/dn/VaLHP/btrf0rnI7M7/xL18uJBZyGh01Da7aowTKk/img.png)
1
2
|
val name = (x) => x
println(name(6))
|
cs |
![](https://blog.kakaocdn.net/dn/dLUzuC/btrfXygAKRy/fBPYlB2qsRC5eMpDvwtGv0/img.png)
또한, 함수에서는 parameter의 형을 정해줘야 한다. 그렇지 않으면, 위와 같은 에러가 발생한다.
-parameter을 한개이상 가지는 함수
1
2
|
val name = (x:Int, y:Int) => x + y
println(name(6,2))
|
cs |
![](https://blog.kakaocdn.net/dn/2Zd5g/btrfU2CUWWE/oMe1jjhziWUQXI3EqffKl0/img.png)
반응형
'공부 > 프로그래밍언어 (scala)' 카테고리의 다른 글
#6 scala 기본 - 형(type) (0) | 2021.09.26 |
---|---|
#5 scala 기본 - Methods | Method와 Function의 차이점 (0) | 2021.09.25 |
#3 scala 기본 - Blocks (0) | 2021.09.25 |
#2 scala 기본 - Values, Variables (0) | 2021.09.25 |
#1 scala 기본 - println (0) | 2021.09.25 |