티스토리 뷰
728x90
스코프 함수
• 객체 생성 시 사용하는 함수
• 하나의 스코프를 만들어 그 안의 코드들을 실행한다.
- 이 스코프 안에서는 객체를 이름없이 바로 접근할 수 있다.
• 생성한 객체에 대해 어떠한 동작을 해야할 때 간결하게 사용할 수 있다.
- 스코프 함수를 쓰지 않으면 간단한 동작을 할 때도 변수를 만들고, 변수의 이름을 반복해서 사용해야하는 번거로움이 있다.
// 스코프 함수 사용하지 않았을 때
val alice = Person("Alice", 20, "Amsterdam")
println(alice)
alice.moveTo("London")
alice.incrementAge()
println(alice)
// 스코프 함수 사용했을 때
Person("Alice", 20, "Amsterdam").let {
println(it)
it.moveTo("London")
it.incrementAge()
println(it)
}
• 스코프 함수의 종류에는 apply, also, run, with, let이 있고, 각 함수마다 용도가 조금씩 다르다.
- 스코프 함수는 객체를 어떤 것으로 참조하는 지와, 반환 값이 무엇인지에 따라 나눌 수 있다.
스코프 함수 종류 | 객체 참조 | |
apply, run, with | this (생략 가능) | |
also, let | it |
스코프 함수 종류 | 반환 값 | |
apply, also | 객체 | |
run, with, let | 람다식 결과 |
- 스코프 함수의 각 용도는 잘 정리가 되어 있는 글을 발견하여 참조합니다.
http://batmask.net/index.php/2021/12/10/286/
이 글은
패스트 캠퍼스 Android 앱 개발의 정석 with Kotlin 올인원 패키지 Online
강의를 듣고 공부한 내용을 바탕으로 작성되었습니다.
728x90
'📱 Android > 💻 Kotlin' 카테고리의 다른 글
[Android/Kotlin] 21. 익명 클래스(Anonymous Class) (0) | 2022.10.24 |
---|---|
[Android/Kotlin] 20. 인터페이스(Interface) (0) | 2022.10.13 |
[Android/Kotlin] 19. Null Safety (0) | 2022.10.13 |
[Android/Kotlin] 18. 형변환 (0) | 2022.10.13 |
[Android/Kotlin] 17. 상속 (0) | 2022.10.12 |
댓글
공지사항