57
34

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Kotlin のコレクション・配列早見表

Last updated at Posted at 2019-02-24

Kotlin でコレクションや配列を使うときにどれを使ったらいいのかいつも忘れてしまうのでメモ。
間違いなどありましたらご指摘お願いします。

コレクション

次の3種類がある。要素や要素数の変更はできない。

名前 機能 作り方
List リスト listOf()
Set 重複なしのリスト setOf()
Map key と value を保持する mapOf()

要素や要素数を変更できるようにした、MutableList、 MutableSet、MutableMap もある。

配列

Kotlin で配列を使おうとするといくつか種類があって迷ってしまうのでまとめ。
基本的に要素と要素数の変更を認めるかで使い分ければよさそう。
-> 基本的には要素を変更しない場合は List、変更する場合は MutableList でよさそう。(@sdkei さんのコメント参照)

Kotlin Java の対応 作り方  要素の変更 要素数の変更
List<T> List<T> listOf()
Array<T> T[] arrayOf()
ArrayList<T> ArrayList<T> arrayListOf()
MutableList<T> ArrayList<T> mutableListOf()
  • Array には T がプリミティブ型の場合のクラス (IntArray、ByteArray など) が用意されている。
  • MutableList と ArrayList は同じと考えて良い(MutableList は裏側では ArrayList を呼び出している。)。
    将来的に MutableList の裏側の実装が変更される可能性はあるらしい。使い分けとしては、基本的には MutableList を使い、
    ArrayList でなければならないというときのみ ArrayList を使うということでよさそう。(Kotlin の ArrayList の実体は Java の ArrayList なので、Java との相互運用を考えた場合とか???)

参考等

Kotlinの公式ドキュメントは平易な英語で書かれていてわりかし読みやすい。

57
34
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
57
34

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?