English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
本節では、Rubyの基本データ型を紹介します。
Rubyがサポートするデータ型には基本的なNumber、String、Ranges、Symbols、true、false、nilという特別な値、そして重要なデータ構造の2つ、ArrayとHashが含まれます。
整型には31ビット以内(4バイト)、それがFixnumの例です。それを超えるとBignumの例となります。
整数の範囲は -230 まで 230-1、この範囲内の整数はこのクラスに属します。 Fixnum のオブジェクト、当該の整数値が以下の範囲を超える場合2の3の0乗時( -262 まで 262-1が自動的にBignum型に変換されます。
整数の前にオプションの前導シンボル、オプションの基本指標(0が8進数に、0xが16進数に、0bが2進数に対応)、それに数字の列を付け加えることができます。アンダースコア文字は数字の文字列では無視されます。
ASCII文字またはクエスチョンマークでマークされたエスケープシーケンスの整数値を取得できます。
123 # Fixnum 10進数 1_234 # Fixnum 下線のある10進数 -500 # 負の Fixnum 0377 # 8進数 0xff # 16進数 0b1011 # 二進数 "a".ord # "a"の文字エンコード ?\n # 改行符(0x0a)のエンコード 12345678901234567890 # 大数 #整数 Integer 以下はいくつかの整数リテラルです #リテラル(文字列):コードで見られる値、数値、bool値、文字列などすべてリテラルと呼ばれます #以下の0,1_000_000,0xaなど a1=0 #千の区切りのある整数 a2=1_000_000 #他の進数の表現 a3=0xa puts a1,a2 puts a3 #puts print はコントロールターミナルに文字を印刷します、そのうち puts は改行を含めます =begin これはコメントであり、インラインドキュメントコメントと呼ばれます C#の/**/ =end
Rubyは浮点数をサポートしています。これらは小数を含む数字です。浮点数はクラス Float のオブジェクトであり、以下のいずれかです。
123.4 # 浮点値 1.0e6 # 科学記数法 4E20 # 必要ではありません 4e+20 # 指数前の符号 #浮点型 f1=0.0 f2=2.1 f3=1000000.1 puts f3
加減乗除演算子:+-*/;指数演算子は**
指数は整数でなくても構いません。例えば
#指数算術 puts 2**(1/4)#1と4の商は0、その後2の0乗は1 puts 16**(1/4.0)#1と4.0の商は0です。25(四分之一),それから四次方根を取ります
Rubyの文字列は簡単に言えば 8 ビットシーケンスであり、Stringクラスのオブジェクトです。
ダブルクォートで囲まれた文字列は、置換とアンダースコアを使用できますが、シングルクォートで囲まれた文字列は置換できず、ただ \\\" と \' の2つのアンダースコアのみを使用できます。
#!/usr/bin/ruby -w puts 'escape using \ puts 'それが正しい';
これにより以下の結果が得られます:
escape using \ それが正しい
您可以使用序列 #{ expr } 任意のRuby表現式の値を文字列に置き換えます。ここでは、exprは任意のRuby表現式です。
#!/usr/bin/ruby -w puts "相乗 : #{24*60*60";
これにより以下の結果が得られます:
相乗 : 86400
#!/usr/bin/ruby -w name="Ruby" puts name puts "#{name"+",ok"}"
出力結果は:
Ruby Ruby,ok
以下にRubyがサポートする反スラッシュシンボルを示します:
シンボル | が表す文字 |
---|---|
\n | 改行(0x0a) |
\r | エンター(0x0d) |
\f | ページ送り(0x0c) |
\b | バックスペースキー(0x08) |
\a | ベル警報符(0x07) |
\e | エスケープシーケンス(0x1b) |
\s | スペース文字(0x20) |
\nnn | 8進数表現法(nは0-7) |
\xnn | 16進数表現法(nは0-9、a-fまたはA-F) |
\cx, \C-x | コントロール-x |
\M-x | メタ-x (c | 0x80) |
\M-\C-x | メタ-コントロール-x |
\x | 文字 x |
Rubyの文字列の詳細についてもっと知りたい場合は、以下を参照してください Rubyの文字列(String)。
配列リテラルは[]内でカンマで区切られた定義を使用し、range定義をサポートします。
(1)配列は[]索引を使用してアクセスします
(2)に代入操作を使用して要素を挿入、削除、置き換えます
(3)を通じて+、-記号を使用して要素を統合および削除し、集合が新しい集合として現れます
(4) <<記号を使用して元のデータに要素を追加します
(5)を通じて*重複の配列要素
(6) |と&記号を使用してユニオンと交差点操作を行います(注意:順序)
#!/usr/bin/ruby ary = [ "fred", 10, 3.14, "これは文字列", "最後の要素", ] ary.each do |i| puts i end
これにより以下の結果が得られます:
fred 10 3.14 これは文字列です 最後の要素
Rubyの配列の詳細についてもっと知りたい場合は、以下を参照してください Rubyの配列(Array)。
Rubyのハッシュは大括号内に一連のキーを置きます/値対、キーと値の間にはカンマとシーケンス => を使用して区切ります。末尾のカンマは無視されます。
#!/usr/bin/ruby hsh = colors = { "red" => 0xf00, "green" => 0x0f0, "blue" => 0x00f } hsh.each do |key, value| print key, "は", value, "\n" end
これにより以下の結果が得られます:
赤色は 3840 緑色は 240 青色は 15
Ruby ハッシュの詳細についてもっと知りたい場合は、以下を確認してください Ruby ハッシュ(Hash)。
範囲は区間を表現します。
範囲は開始値と終了値を設定することで表現されます。範囲は s..e または s...e で構築されるか、Range.new で構築されます。
'..' で構築された範囲は、開始値から終了値まで(終了値を含む)動作します。'...' で構築された範囲は、開始値から終了値まで(終了値を含まない)動作します。範囲はイテレータとして使用される場合、シーケンスの各値を返します。
範囲 (1..5) は値を含むことを意味します 1, 2, 3, 4, 5、範囲 (1...5) は値を含むことを意味します 1, 2, 3, 4 。
#!/usr/bin/ruby (10..15).each do |n| print n, ' ' end
これにより以下の結果が得られます:
10 11 12 13 14 15
Ruby 范囲の詳細についてもっと知りたい場合は、以下を確認してください Ruby 范囲(Range)。