ものづくりのブログ

うちのネコを題材にしたものづくりができたらいいなと思っていろいろ奮闘してます。

【Crystal】 空の配列の作り方

Crystal で空配列を作ろうとすると以下のようにエラーになります。

icr(0.33.0) > array = []
for empty arrays use '[] of ElementType'

空配列を作るには型(クラス)を指定しないといけないようです。
(以下数値型の場合)

icr(0.33.0) > array = [] of Int32
 => []

複数の型に対応させるには以下のように記述します。

icr(0.33.0) > array = [] of Int32 | String
 => []


要素を追加してみます。

icr(0.33.0) > array.push(1)
 => [1]
icr(0.33.0) > array.push("a")
 => [1, "a"]

数値も文字列も追加できました。


そういえば、「<<」の記号でも要素を追加できるか、ついでに検証してみました。

icr(0.33.0) > array << "hoge"
 => [1, "a", "hoge"]