Rubyのデータ型について詳しく解説します

Ruby

はじめに

Rubyのデータ型は、テキスト、文字列、数値など、さまざまな種類のデータを表します。

純粋なオブジェクト指向言語であるため、すべてのデータ型はクラスに基づいています。

Rubyには以下のようなデータ型が存在します。

  • Number(数値)
  • Boolean
  • String(文字列)
  • Hash(ハッシュ)
  • Array(配列)
  • Symbol(シンボル)

Number(数値)

一般に数値は、ドットを小数点として、一連の数字として定義されます。オプションとして、アンダースコア(”_”)をセパレータとして使用することができます。

数字には、整数や浮動小数点などの種類がありますが、Rubyでは、整数と浮動小数点数の両方を扱うことができます。

整数に関してはその大きさによって、BignumとFixnumの2種類に分けられます。

#時速を求める

distance = 0.1

time = 8.35 / 3600
speed = distance / time
puts "平均時速は#{speed}km/hです。"

#出力
平均時速は43.11377245508982km/hです。

Boolean

booleanは、真か偽のどちらかを表すデータ型です。

厳密には、booleanはデータ型ではなく、真を表すtrue型と偽を表すfalse型という擬似変数と呼ばれるものが存在しているだけです。

Rubyにおける真は、false,nil以外の全てのもの。

一方で偽は、false,nilのものです。

if true
  puts "真"
else
  puts "偽"
end
  
if nil
  puts "nilは真"
else
  puts "nilは偽"
end
  
if 1
  puts "1は真"
else
  puts "1は偽"
end

#出力
真
nilは偽
1は真

String(文字列)

文字列とは、文章や単語を表す文字の集まりのことです。文字列は、シングルクォート(”)またはダブルクォート(””)で囲んで定義します。

文字列は String クラスのオブジェクトです。

ダブルクォートで囲まれた文字列は代入とバックスラッシュ表記が可能ですが、シングルクォートで囲まれた文字列は代入ができず、バックスラッシュ表記ができるのは \ \ と \’ だけです。

puts "文字列型"
puts 'escapeに使う"\\"'
puts 'That\'s right'

#出力
文字列型
escapeに使う"\"
That's right

Hash(ハッシュ)

ハッシュはキーに値を割り当てます。キーに値を割り当てる場合は、=>記号で指定します。

キーとペアの間はカンマで区切り、すべてのペアを中括弧で囲みます。Rubyのハッシュは、JavaScriptのオブジェクトリテラルやPHPの連想配列のようなものです。

colors = { "red" => "赤", "green" => "緑", "blue" => "青" }
colors.each do |key, value|
 print key, " は ", value, "\n"
end

#出力
red は 赤
green は 緑
blue は 青

Array(配列)

配列は、データまたはデータのリストを格納し、あらゆる種類のデータを格納することができます。

配列のデータは、カンマで区切り、角括弧で囲みます。配列の要素の位置は 0 から始まります

ary = [ "荻野", 0, 38, "最多安打", "リードオフマン", ]
ary.each do |i|
 puts i
end

#出力
荻野
0
38
最多安打
リードオフマン

Symbol(シンボル)

シンボルは軽量な文字列です。記号の前にはコロン(:)が付きます。

文字列の代わりに使用することで、より少ないメモリで使用することができ、シンボルの方が性能がいいです。

greetings = {:japan => "こんにちは", :us => "hello", :chn => "你好"}
  
puts greetings[:japan]
puts greetings[:us]
puts greetings[:chn]

#出力
こんにちは
hello
你好
タイトルとURLをコピーしました