前回までで、全てのデータ型の紹介が終わりました。この記事では、それらを整理して表にしています。
値の分類
型の名前は datatype
の結果に合わせています。
- 数値
- boolean
- integer
- floating
- complex
- extended
- rational
- 文字・文字列
- literal
- unicode
- unicode4
- symbol
- ボックス
- boxed
数値
型 | 値 | 例 |
---|---|---|
boolean | 整数 0 (false) と 1 (true) |
1 |
integer | 64 bit 符号付き整数 | 42 |
floating | IEEE 754 倍精度浮動小数点数 | 3.14 |
complex | 複素数 | 1j_1 |
extended | 多倍長整数 | 12345x |
rational | 有理数 (分数) | 1r2 |
文字・文字列
型 | 値 | 例 |
---|---|---|
literal | UTF-8 文字(列) | 'a' |
unicode | UTF-16 文字(列) | u:16b3042 |
unicode4 | UTF-32 文字(列) | 10 u: 16b20bb7 |
symbol | 一意な文字列 | s:<'symbol' |
ボックス
型 | 値 | 例 |
---|---|---|
boxed | どんな値でも格納可能 | 'abc' ; 'xy' ; (<1 2) ; 3 |
配列
普通は密な配列を使います。疎な配列の場合、datatype
は型の名前の前に sparse
を付けたものになります。
- 密な配列 (普通の配列)
- 疎な配列 (疎行列)
別名
名前 | 意味 | 例 |
---|---|---|
リスト | 一次元配列 | (ベクター・文字列) |
ベクター | 数値のリスト (一次元配列) | 1 2 3 |
文字列 | 文字のリスト (一次元配列) | 'abc' |
テーブル | 二次元配列 | i.3 3 |
ブリック | 三次元配列 | 2 2 2 $ 'abcdefgh' |
アトム
配列と対比して、配列になっていない「一つの」値をアトムと呼びます。1
や 'a'
などがアトムです。ボックスは、中に入っている値に関わらず、アトムに分類されます。
J では、「オブジェクト型」のようなものは無く、新しい型を定義することもできないので、上に挙げた型が全てです。逆に言うと、これらの値だけを使ってプログラムを書いていくことになります。