宝石部屋

プログラミング(主にRuby on Rails)のメモ帳

シンボルについて

シンボルとは、名前を表すオブジェクトのことである。

文字列を整数で表したものであり、文字列ではない。

  • メソッド、変数の名前
  • 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 は値と呼ばれ、

ハッシュの要素は、キーと値のペアからなる。

 

シンボルとハッシュについてでした。