*스코프 함수(Scope functions) : run, let, apply, also, with
-코드를 축약해서 표현할 수 있도록 도와주는 함수, 영역함수
-함수처럼 쓰지 않고 괄호 없이 키워드처럼 사용
-자신을 호출한 대상을 this 또는 it으로 대체
--this로 사용되는 스코프 함수 : run, apply, with
--it으로 사용되는 스코프 함수 : let, also
-호출 대상 자체(this, it)를 반환 또는 마지막 실행 코드 반환
--호출 대상 자체를 반환하는 함수 : apply, also
--마지막 실행 코드를 반환하는 함수 : let, run, with
*this로 사용되는 스코프 함수 : run, apply, with
-스코프 함수 안에서 호출한 대상을 this로 사용
-this의 생략 : 클래스 내부 함수를 사용하는 것과 동일한 효과 이므로 this생략 가능
-호출 대상이 null일 경우 apply, run사용 : with는 확장함수가 아니기 때문에 일반 함수처럼 사용됨
-스코프 함수 안에서 this로 사용되기 때문에 메서드나 프로퍼티 직접 호출
*it으로 사용되는 스코프 함수 : let, also
-스코프 함수 안에서 호출한 대상을 it으로 사용
-it은 생략이 불가하지만 다른 이름으로 바꿀 수 있음(ex. target 등)
*호출 대상인 this 또는 it 자체의 값을 반환하는 함수 : apply, also
-스코프 함수 안에서 코드가 모두 완료된 후 자기 자신을 되돌려 줌
-예제 마지막 코드인 count()를 호출 했지만 이 코드와 상관 없이 MutableList 자신을 돌려주기 때문에 위와 같은 결과가 나옴
*마지막 실행 코드를 반환하는 함수 : let, run, with
-자기 자신의 값이 아닌 스코프의 마지막 코드를 반환함
이 포스팅에 작성한 내용은 고돈호, ⌜이것이 안드로이드다⌟, 한빛미디어(주), 2022 에서 발췌하였습니다.
'Android App > Kotlin' 카테고리의 다른 글
XML 태그의 구조, 주석 (0) | 2022.11.02 |
---|---|
레이아웃(Layout) (0) | 2022.11.02 |
지연 초기화(lateinit, lazy) (1) | 2022.10.31 |
null 값에 대한 안정적인 처리(Null Safety) (0) | 2022.10.31 |
클래스 - 요약정리 (0) | 2022.10.31 |