0
0

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 3 years have passed since last update.

Scalaのコレクションたち〜immutable編〜

Posted at

はじめに

Scalaのコレクションには色々な実装が存在します。
今回はその中でも『イミュータブル』なコレクションにフォーカスをあてて、各コレクションの特徴をまとめていきたいと思います。以降、ミュータブル/イミュータブルの明記がない場合はイミュータブルコレクションのことを指します。
(ミュータブル編は必要性に駆られたら調べますが、多分やらない・・・)

  • ここで書くこと

    • 各コレクション実装の特徴
  • ここで書かないこと

    • 『Seqとは?』のようなコレクション概念
    • ミュータブルコレクションに関すること

内容は公式ドキュメントに沿ってまとめています。図も公式ドキュメントから拝借したものです。

動作環境

  • OS
    • MacOS Catalina
  • CPU
    • Corei9(2.4GHz 8コア)
  • メモリー
    • 64GB
  • Scalaバージョン
    • 2.13.2

Scalaのコレクション

以下の図は公式ドキュメントに使用されているものです。

image.png
資料:https://docs.scala-lang.org/ja/overviews/collections/overview.html
ただ、上記の図は少し古いようでScala2.13で追加されたコレクションが反映されていません。それらについても拾える範囲で拾っていきます。

コレクションにはざっくり以下の3つが存在します。

  • Seq
  • Map
  • Set

これらの3つの種類のコレクションについて、各実装の特徴を調べていきたいと思います。当初は1ページに収める予定だったのですが、思ったよりも分量が多くなってしまったので、各コレクションごとにページを分割しています。詳細はリンク先のページでご確認ください。

0
0
0

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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?