커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
스코프 펑션에서 also와 apply 의 차이를 잘 모르겠어요
Kotlin 문법 종합반 v0
5주차
북마크
장*혁
댓글
1
추천
0
조회수
7
조회수
7
답변 완료

* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.

* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.


data class Person(var name: String, var age: Int)

fun main() {
    val p = Person("Alice", 30)
    val pAlso = p.also{
        it.age+=5
    }
    println(p)
    println(pAlso)

    val d = Person("Blice", 11)
    val dApply = d.apply{
        age+=5
    }
    println(d)
    println(dApply)
}


ㅁalso 를 사용하던 apply 를 사용하던 차이점이 무엇인지 잘 모르겠습니다. 둘 다 원본 객체에 바로 저장이 되고 이를 수신 객체에 반영하는 것 아닌가요?

구체적인 차이점이 있는 기능이나 예시가 있다면 설명 부탁드립니다


data class Person(var name: String, var age: Int)

fun main() {
    val p = Person("Alice", 30)
    val pAlso = p.also{
        it.age+=5
    }
    println(p)
    println(pAlso)

    val d = Person("Blice", 11)
    val dApply = d.apply{
        age+=5
    }
    println(d)
    println(dApply)
}





data class Person(var name: String, var age: Int)

fun main() {
    val p = Person("Alice", 30)
    val pAlso = p.also{
        it.age+=5
    }
    println(p)
    println(pAlso)

    val d = Person("Blice", 11)
    val dApply = d.apply{
        age+=5
    }
    println(d)
    println(dApply)
}



취소
 공유
취소
댓글 0
댓글 알림
나의얼굴