English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Ruby データ型

本節では、Rubyの基本データ型を紹介します。

Rubyがサポートするデータ型には基本的なNumber、String、Ranges、Symbols、true、false、nilという特別な値、そして重要なデータ構造の2つ、ArrayとHashが含まれます。

数値型(Number)

整型(Integer)

整型には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)
\nnn8進数表現法(nは0-7)
\xnn16進数表現法(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)