Kotlin から列挙型クラスの values() メソッドへの呼び出しのうち、entries プロパティの読み取りに置換できるものを報告します。

Enum.entries を使用すると、コードのパフォーマンスが向上する場合があります。

このクイックフィックスは values()entries に置換します。

詳細: KT-48872 Enum.values() に対応するモダンでパフォーマンスの高い置換の提供

注意: entries プロパティの型は values() メソッドの戻り値の型と異なります (Array<T> ではなく List<T> から継承している EnumEntries<T>)。 このため、場合によってはクイックフィックスによってコードを破壊しないように追加の .toTypedArray() 変換が挿入されますが、多くの場合はこの変換なしで置換が実行されます (例: for ループ)。

例:


    enum class Version {
        V1, V2
    }

    Version.values().forEach { /* .. */ }
    val firstVersion = Version.values()[0]
    functionExpectingArray(Version.values())

クイックフィックス適用後:


    enum class Version {
        V1, V2
    }

    Version.entries.forEach { /* .. */ }
    val firstVersion = Version.entries[0]
    functionExpectingArray(Version.entries.toTypedArray())