広告スペース(バナー)
🎯Kotlin レッスン
基本文法の基礎8
データ構造とオブジェクト指向7
構文の基本を深める9
関数とデータ構造の応用9
アルゴリズムとテストの基礎8
文字列・数値操作の応用8
実務で役立つ機能8
アルゴリズム練習問題10
レッスン 42 / 68

リストの平坦化(flatten)

このレッスンでは、Kotlinのflattenを使って入れ子になったリストを平坦化する方法を学び、複雑なデータ構造をシンプルに扱う方法を理解することを目標にします。「Kotlin flatten 使い方」で調べている方向けです。

リストの中に入れ子になったリストがあるとき、それを「平らな」1つのリストに展開することをflatten(平坦化)と呼びます。Kotlinでは.flatten()を使うと1行で書けます。

サンプルコードでは、listOf(listOf(1, 2), listOf(3, 4), listOf(5))という入れ子のリストに対してnested.flatten()を実行することで、[1, 2, 3, 4, 5]という1つのリストに展開しています。Kotlinの標準ライブラリの簡潔さがよく表れているメソッドです。

初心者がよくつまずくのが、flatMapとの違いです。flatten()はすでに入れ子になっているリストをそのまま平らにするのに対し、flatMapは変換と平坦化を同時に行う別のメソッドです。

実際の開発現場では、入れ子構造のデータをまとめて1つのリストとして扱いたいときに役立つ、実務でも使われるテクニックです。

📖 お手本コード
✍️ あなたのコード
コードを書いたら「実行する」を押してください

🧪 このサイトではKotlinを直接コンパイル・実行できないため、お手本コードと同じ内容を入力できたかをその場で判定します(採点はブラウザ内だけで行われ、どこにも送信されません)。

🎯
ここまでできればゴール達成!
入れ子になったデータを、1つのまとまったリストに整理できるようになります。
広告スペース(バナー)
広告スペース(記事内)