코틀린 확장함수/DSL

Koder·2023년 1월 22일
0

전반적인 확장함수를 소개하는것은 아니고 확장함수를 이용하여
DSL 특성을 가진 리시버 특성의 확장 함수를 만드는것과 익명 함수를 만드는것을 본다.

가장 일반적인 확장함수의 사용 예시

fun Int.myPlus(other: Int) = this + other
println(10.myPlus(10))

익명 확장 함수

// 확장함수로 정의를 시작하였지만 이름을 제외하여 익명처리
val myPlus = fun Int.(other: Int) = this + other
println(myPlus(10,20))

val myPlus2: Int.(Int) -> Int = { this + it }
println(myPlus2(50,50))

위와같이 this를 받는 형태를 리시버를 가진 특성이라고 한다.

profile
일단 적고 보자

0개의 댓글