takafumi blog

日々の勉強メモ

Scala 配列 / Array

環境   Scala 2.11.6 CentOS7.0

Scalaスケーラブルプログラミング」(コップ本)メモ

読了:第04章まで

■ 配列 / Array

Scalaの配列は

  • インデックスは0から始まる
  • 配列要素の型は決まっている

である。

▽初期化
scala> val ar1 = new Array[String](5)
ar1: Array[String] = Array(null, null, null, null, null)

// 初期化と値の設定
scala> val ar2 = Array("A", "B", "C", "D", "E")
ar2: Array[String] = Array(A, B, C, D, E)

// 型推論を付与
scala> val ar3 = Array("a", "b", "c", "d", "e"): Array[String]
ar3: Array[String] = Array(a, b, c, d, e)

// ar2は以下と同じ
scala> val ar4 = Array.apply("A", "B", "C", "D", "E")
ar4: Array[String] = Array(A, B, C, D, E)
▽値の設定
scala> ar1(0) = "ABC"

scala> ar1.update(1, "DEF")

scala> ar1
ar1: Array[String] = Array(ABC, DEF, null, null, null)
▽値の取得
scala> ar1(0)
res1: String = ABC

scala> ar1(1)
res2: String = null

// 定義された範囲外のインデックスにアクセスするとエラー
scala> ar1(5)
java.lang.ArrayIndexOutOfBoundsException: 5
  ... 33 elided

takafumi-s.hatenablog.com