シンボルについて
シンボルとは、名前を表すオブジェクトのことである。
文字列を整数で表したものであり、文字列ではない。
- メソッド、変数の名前
- URLのパス
- ハッシュのキー
などで使われる。
シンボルの例として、
x = "abc"
y = "abc"
puts x == y # true
puts x.equal?(y) # false
これに対して
x2 = :abc
y2 = :abc
puts x2 == y2 # true
puts x2.equal?(y2) # true
==は文字列を比較しているのに対し、equal?はインスタンス(実体)を比較している。
また、ハッシュ(連想配列)とは、配列のようにオブジェクトをまとめるもの。
これも例として、
dog = {
name: "Pochi",
gender: "male",
age: 4
}
name, gender, age はキー、Pochi, male, 4 は値と呼ばれ、
ハッシュの要素は、キーと値のペアからなる。
シンボルとハッシュについてでした。