Kotlin Koans 10 Object expressions

目次

Object expressions (Playground)

Description

Read about object expressions that play the same role in Kotlin as anonymous classes in Java.

Add an object expression that provides a comparator to sort a list in a descending order using java.util.Collections class. In Kotlin you use Kotlin library extensions instead of java.util.Collections, but this example is still a good demonstration of mixing Kotlin and Java code.

Javaの匿名クラス(無名クラス)と同じ役割を持つKotlinの オブジェクト式 を読んでください。

java.util.Collections クラスを使用してリストを降順にソートするコンパレータを提供するオブジェクト式を追加してください。Kotlinでは java.util.Collections の代わうにKotlinのライブラリ拡張を使用しますが、この例ではKotlinとJavaのコードを混合させることができます。

Code

import java.util.*

fun getList(): List<Int> {
    val arrayList = arrayListOf(1, 5, 2)
    Collections.sort(arrayList, object : Comparator<Int> {
        override fun compare(x: Int, y: Int) = y - x
    })
    return arrayList
}

Memo

← Posts