infix fun <T> Comparator<T>.thenDescending(
    comparator: Comparator<in T>
): Comparator<T>

Platform and version requirements: JVM

Combines this comparator and the given comparator such that the latter is applied only when the former considered values equal.

import kotlin.test.*

fun main(args: Array<String>) {
val list = listOf("A", "aa", "b", "bb", "a")

val lengthThenCaseInsensitive = compareBy<String> { it.length }

val sorted = list.sortedWith(lengthThenCaseInsensitive)

println(sorted) // [b, A, a, bb, aa]