コンテンツにスキップ

リテラル

Crystal には、数多くの基本的な型に対応したリテラルが用意されています。

リテラル 値のサンプル
Nil nil
真偽値 (Bool) true, false
整数 (Integer) 18, -12, 19_i64, 14_u32,64_u8
浮動小数点数 (Float) 1.0, 1.0_f32, 1e10, -0.5
文字 (Char) 'a', '\n', 'あ'
文字列 (String) "foo\tbar", %("あ"), %q(foo #{foo})
シンボル (Symbol) :symbol, :"foo bar"
配列 (Array) [1, 2, 3], [1, 2, 3] of Int32, %w(one two three)
配列ライク Set{1, 2, 3}
ハッシュ (Hash) {"foo" => 2}, {} of String => Int32
Hashライク MyType{"foo" => "bar"}
範囲 (Range) 1..9, 1...10, 0..var
正規表現 (Regex) /(foo)?bar/, /foo #{foo}/imx, %r(foo/)
タプル (Tuple) {1, "hello", 'x'}
名前付きタプル (NamedTuple) {name: "Crystal", year: 2011}, {"this is a key": 1}
Proc ->(x : Int32, y : Int32) { x + y }
コマンド (Command) `echo foo`, %x(echo foo)