erg/doc/JA/syntax/10_array.md
Shunsuke Shibayama 96132b20f6 initial commit
2022-08-10 23:02:27 +09:00

993 B

配列

配列はもっとも基本的な コレクション(集約) です。 コレクションとは、内部にオブジェクトを複数保持できるオブジェクトのことです。

a = [1, 2, 3]
a: [Int; 3] # 型指定: セミコロンの後の数字は要素数
# 要素数がわからない場合は省略可能
a: [Int]

mut_a = [!1, !2, !3]
mut_a[0].inc!()
assert mut_a == [2, 2, 3]

スライス

配列は、複数の値をまとめて取り出すこともできます。これをスライスと呼びます。

l = [1, 2, 3, 4]
# Pythonのl[1:3]に相当
assert l[1..<3] == [2, 3]
assert l[1..2] == [2, 3]
# l[1]と同じ
assert l[1..1] == [2]
# Pythonのl[::2]に相当
assert l[..].step(2) == [2, 4]

スライスで得られるオブジェクトは配列の(不変)参照です。

print! Typeof l[1..2] # Ref [Int; 4]

Previous | Next