- let
- let 함수는 수신 객체(it)를 인자로 받아 블록 내부에서 처리한 후, 결과를 반환합니다.
fun main() {
val name: String? = "Kotlin"
val length = name?.let {
println("Name is $it")
it.length
}
println("Length of name is $length")
}
- apply
- apply 함수는 객체 초기화 시 주로 사용되며, 객체 자신을 반환합니다. 블록 내부에서는 객체를 this로 참조합니다.
class Person {
var name: String = ""
var age: Int = 0
var address: String = ""
override fun toString(): String {
return "Person(name='$name', age=$age, address='$address')"
}
}
fun main() {
val person = Person().apply {
name = "John"
age = 30
address = "123 Main St"
}
println(person)
}
- run
- run 함수는 수신 객체를 블록 내부에서 this로 참조하며, 블록의 결과를 반환합니다.
fun main() {
val result = "Kotlin".run {
println("The receiver string length is $length")
length
}
println("Result is $result")
}
- with
- with 함수는 수신 객체를 인자로 받아 블록 내부에서 this로 참조하며, 블록의 결과를 반환합니다. 주로 이미 인스턴스화된 객체에서 여러 함수를 호출할 때 사용됩니다.
fun main() {
val numbers = mutableListOf(1, 2, 3)
val result = with(numbers) {
add(4)
add(5)
"The list now contains $size elements"
}
println(result)
}
반응형
'Language > Java & Kotlin' 카테고리의 다른 글
[Kotlin] 코루틴(Coroutines) 기초에 대해 알아보자 (1) suspend (2) | 2024.06.15 |
---|---|
[Kotlin] 코루틴(Coroutines)에 대해서 알아보자 (0) | 2024.06.14 |
[Java] 여러 개의 Java 버전이 설치되어 있을 때, Java 버전을 자동으로 변경하는 방법 (0) | 2024.06.04 |
[Kotlin] 자바와 코틀린의 공통점과 차이점 (0) | 2024.05.26 |
[JPA] 영속성 컨텍스트란 (0) | 2024.01.29 |
댓글