=================
== The Archive ==
=================

[Kotlin] 한 줄로 swap 하는 방법

|

개요

파이썬에서는 한 줄로 쉽게 swap 하는 방법이 있다.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
>>> a, b = 1, 2
>>> print(a)
1
>>> print(b)
2
>>> a, b = b, a
>>> print(a)
2
>>> print(b)
1

그런데 코틀린에서는 어떻게 하면 좋을지 궁금해서 찾아봤다.

방법은 apply 또는 also 를 사용하면 된다.

1
2
3
4
5
6
7
8
9
// Use apply

fun main() {
    var first = 1
    var second = 2
    println("first: $first, second: $second") // first: 1, second: 2
    first = second.apply { second = first }
    println("first: $first, second: $second") // first: 2, second: 1
}
1
2
3
4
5
6
7
8
9
// Use also

fun main() {
    var first = 1
    var second = 2
    println("first: $first, second: $second") // first: 1, second: 2
    first = second.also { second = first }
    println("first: $first, second: $second") // first: 2, second: 1
}

References

Categories:

Tags: