ArrayList 오름차순, 내림차순 정렬

오름차순 정렬 : basicArrayList.sortBy{it}
내림차순 정렬 : basicArrayList.sortByDescending{it}

 

fun SortArrayList(){
    var basicArrayList : ArrayList<Int> = arrayListOf() // arrayListOf makes empty arrayList
    basicArrayList.add(1)
    basicArrayList.add(3)
    basicArrayList.add(2)

    /* Ascending order */
    basicArrayList.sortBy{it}
    println(basicArrayList) /* [1, 2, 3] */

    /* Descending order */
    basicArrayList.sortByDescending{it}
    println(basicArrayList) /* [3, 2, 1] */
}

 

Pair를 자료형으로 가지는 ArrayList의 오름차순, 내림차순 정렬

아래 예시는 Pair의 first를 기준으로 정렬했지만 Triple, Class 등 기타 자료형도 같은 방법으로 가능하다.

오름차순 : sortTestClass.sortBy{it.first}
내림차순 : sortTestClass.sortByDescending{it.first}

 

fun SortClassArrayList(){
    val sortTestClass = arrayListOf<Pair<Int, Int>>()
    sortTestClass.add(Pair(5, 3))
    sortTestClass.add(Pair(3, 6))
    sortTestClass.add(Pair(8, 2))

    /* Ascending order */
    sortTestClass.sortBy{it.first}
    println(sortTestClass) /* [(3, 6), (5, 3), (8, 2)] */

    /* Descending order */
    sortTestClass.sortByDescending{it.first}
    println(sortTestClass) /* [(8, 2), (5, 3), (3, 6)] */
}

 

소스코드

https://github.com/HydroponicGlass/2022_Example_Kotlin/blob/main/ArrayList/ArrayList.kt