Rubyの変数とデータ型について詳しく解説するね。
変数
Rubyの変数は、データを格納するための名前付きの記憶場所です。Rubyには、主に以下の種類の変数があります:
- ローカル変数
- インスタンス変数
- クラス変数
- グローバル変数
- 定数
1. ローカル変数
ローカル変数は、小文字またはアンダースコアで始まり、特定のスコープ内でのみ有効です。メソッドやブロックの内部で使用されます。
name = "太郎" # ローカル変数
age = 25 # ローカル変数
puts name
puts age
2. インスタンス変数
インスタンス変数は、@
で始まり、オブジェクトのインスタンス内で有効です。オブジェクトの状態を保持します。
class Person
def initialize(name, age)
@name = name # インスタンス変数
@age = age # インスタンス変数
end
def display
puts "名前: #{@name}, 年齢: #{@age}"
end
end
person = Person.new("太郎", 25)
person.display
3. クラス変数
クラス変数は、@@
で始まり、クラス全体で共有されます。クラスのすべてのインスタンス間で共有されるデータを保持します。
class Person
@@count = 0 # クラス変数
def initialize(name, age)
@name = name
@age = age
@@count += 1
end
def self.count
@@count
end
end
person1 = Person.new("太郎", 25)
person2 = Person.new("花子", 30)
puts "人数: #{Person.count}"
4. グローバル変数
グローバル変数は、$
で始まり、プログラム全体で有効です。全スコープでアクセス可能です。
$global_variable = "これはグローバル変数です"
def display_global
puts $global_variable
end
display_global
5. 定数
定数は、大文字で始まり、クラスやモジュールの中で使用されます。一度設定すると変更しないことが期待されますが、変更することも可能です。
PI = 3.14
puts PI
データ型
Rubyには、いくつかの基本的なデータ型があります。主なデータ型を以下に示します。
- 整数(Integer)
- 浮動小数点数(Float)
- 文字列(String)
- 真偽値(Boolean)
- 配列(Array)
- ハッシュ(Hash)
- シンボル(Symbol)
1. 整数(Integer)
整数は、整数値を表すデータ型です。
age = 25
puts age
2. 浮動小数点数(Float)
浮動小数点数は、小数点を含む数値を表すデータ型です。
height = 1.75
puts height
3. 文字列(String)
文字列は、テキストデータを表すデータ型です。シングルクォートまたはダブルクォートで囲みます。
name = "太郎"
puts name
4. 真偽値(Boolean)
真偽値は、true
またはfalse
を持つデータ型です。
is_student = true
puts is_student
5. 配列(Array)
配列は、複数の値を順序付きで格納するデータ型です。角括弧で囲み、要素はカンマで区切ります。
fruits = ["りんご", "バナナ", "みかん"]
puts fruits
6. ハッシュ(Hash)
ハッシュは、キーと値のペアを格納するデータ型です。波括弧で囲み、キーと値を=>
で結びます。新しい記法では、シンボルをキーとして使用する場合にコロン(:)を使います。
person = { "name" => "太郎", "age" => 25 }
puts person["name"]
# 新しい記法
person = { name: "太郎", age: 25 }
puts person[:name]
7. シンボル(Symbol)
シンボルは、軽量な文字列のようなもので、一意の値を持つデータ型です。コロン(:)で始まります。
:name
:age
まとめ
- 変数: データを格納するための名前付き記憶場所。ローカル変数、インスタンス変数、クラス変数、グローバル変数、定数の5種類があります。
- データ型: Rubyには整数、浮動小数点数、文字列、真偽値、配列、ハッシュ、シンボルなどの基本的なデータ型があります。
これでRubyの変数とデータ型の基本的な理解が深まったと思います。