인프런 커뮤니티 질문&답변

Mon tage님의 프로필 이미지
Mon tage

작성한 질문수

모던 안드로이드 - 코틀린과 Jetpack 활용

ActivityResultContracts API를 사용한 방법

let이나 apply는 주로 어떤 상황에 사용하나요?

작성

·

147

0

C++이나 자바에선 안나왔던 것들이라 생소하기만하네요

구글에 검색해보니 다들 너무 어렵게 설명해줘서 쉽게 설명해주시는 선생님께 여쭤봅니다

답변 2

2

오준석님의 프로필 이미지
오준석
지식공유자

let은 null 체크 코드를 쉽게 사용하려고 안전한 호출(?.)과 주로 함께 사용합니다.

foo?.let {
    foo.doSomething()
}

이 코드는 다음 코드와 완전히 같습니다.

if (foo != null) {
    foo.doSomething()
}

apply는 변수 이름을 반복 사용안하고 뭔가 설정할 때? 사용하면서 자기자신을 리턴할 때 사용합니다.

val bar = foo.apply {
    name = "홍길동"
    age = 10
}

위 코드는 다음 코드와 완전히 같습니다.

foo.name = "홍길동"
foo.age = 10

val bar = foo

표현 방법만 다른 거라 알아도 그만 몰라도 그만인데 알면 코드를 좀 더 간결하게? 한방에? 작성할 수 있습니다.
중간에 임시 변수를 사용하지 않고도 원하는 코드를 작성할 수도 있습니다.

1

Mon tage님의 프로필 이미지
Mon tage
질문자

진짜 확 이해가 되네요 같은 한국어인데 어떻게 이리 다르지ㅎㅎㅎ

Mon tage님의 프로필 이미지
Mon tage

작성한 질문수

질문하기