Over the limit
[Kotiln] Kotiln 기본 문법4 - 함수 본문
코틀린은 다중 패러다임 언어
함수형 프로그래밍 (FP : Functional Programming)
객체 지향 프로그래밍 (OOP : Object-Oriented Programming)
함수형 프로그래밍
-코드 간략, 테스트나 재 사용성 증가
-순수 함수, 람다식, 고차 함수를 사용해 구성
일반적 선언
fun sum(a:Int, b:Int) : Int{
return a+b
}
간략한 선언
fum sum(a: Int, b : Innt):Int = a+b
아래 예시를 통해 함수를 선언하고 사용하는 것을 살펴보자.
fun sum(a:Int, b:Int):Int 로 선언하고,
result1 or 2 의 형을 먼저 선언 해준 후,
sum(3,2)와 같이 사용하면 된다.
fun sum(a:Int, b:Int):Int{
var sum = a+b
return sum
}
fun main(){
val result1:Int
val result2:Int
result1=sum(3,2)
result2=sum(6,7)
println(result1)
}
이번엔 람다식에 관하여 언급해보자
람다식(Lambda Expression)
특징
- 람다식은{}로 감싸며 fun 예약어를 사용하지 않는다.
- {}안 ->의 왼쪽은 파라미터, 오른쪽은 함수의 내용이다.
- ->오른쪽 문장이 여러개면 세미콜론(;)으로 구분한다.
- 내용 중 마지막 문장은 반환값(return)이다.
- 이름 없이 사용 및 실행이 가능하다.
{x,y -> x+y} //람다식의 예
람다식의 이용
람다식은 고차함수에서 인자로 넘기거나 결과값으로 반환 등을 할 수 있음
변수에 람다식 적용
fun main(){
var result:Int
val multi={x:Int, y:Int->x*y} //일반 변수에 람다식 할당
result = multi(10,20) //람다식이 할당된 변수는 함수처럼 사용 가능
println(result)
}
고차함수란 일반 함수를 인자나 반환값으로 사용하는 함수인데, 예시를 통해 이해해보자
fun main(){
println(highFunc({x,y->x+y},10,20)) //람다식 함수를 인자로 넘김
}
fun highFunc(sum : (Int, Int)->Int, a:Int, b:Int):Int = sum(a,b) //sum 매개변수는 함수
'Framework > Android Studio' 카테고리의 다른 글
Android Studio - 레이아웃2 , 렐러티브 레이아웃 (1) | 2021.07.12 |
---|---|
Android Studio - 레이아웃, 리니어 레이아웃 사용하기 (0) | 2021.07.11 |
[Kotlin] Kotlin 기본 문법3 - 배열 (0) | 2021.07.06 |
[Kotlin] Kotlin 기본문법2 - 조건문 , 반복문 (0) | 2021.07.06 |
[Kotlin] Kotlin 기본 문법 (0) | 2021.07.04 |