Kotlinでは、リストのデータをキー付きで管理したいときに associateBy 関数が便利です。これを使うことで、リストの要素を特定のキーに基づいて Map に変換できます。
associateByの使い方
例えば、ユーザーリストをIDごとに整理する場合、以下のように記述できます。
Kotlin
data class User(val id: Int, val name: String)
val users = listOf(
User(1, "田中"),
User(2, "佐藤"),
User(3, "鈴木")
)
val userMap = users.associateBy { it.id }
println(userMap)出力結果
{
1=User(id=1, name=田中),
2=User(id=2, name=佐藤),
3=User(id=3, name=鈴木)
}associateByのポイント
- リストを一瞬でキー付きデータに変換できる
- 検索が効率的になる(キーを使って素早くアクセス可能)
- データの管理や参照を簡単にする
通常、リストから特定の要素を探すには find などを使う必要がありますが、associateBy で Map に変換すると、キーを使って直接アクセスできるので効率的です。データを整理・最適化したいときに活用してみてください!
