Ruby symbol

Add : to characters.

Example

madoka = :"madoka"  # :madoka
homuhomu = :#{madoka}homuhomu" # :madokahomuhomu
sayaka = :'sayaka' # :sayaka
pepe = :pepe   # :pepe
kyoko = %s(kyoko)  # :kyoko
kyoko = %s{kyoko}  # :kyoko

Convert to String

to_sym

homuhomu = :homuhomu
akemihomura = homuhomu.to_sym

Convert to Symbol

to_s

homuhomu = "homuhomu"
akimihomura = homuhomu.to_s

Object

Check identity, use object_id

Symbol is faster to use hash key, but it is not the target of garbage collection.
If you use key a lot, use string

"kiririn" == "kiririn"        # true
"kiririn".equal? "kiririn"    # false
:kiririn == :kiririn          # true
:kiririn.equal? :kiririn      # true

Different from String?

If variable is same, symbol is same. To check this, you can use eql?

homuhomu = :homuhomu
homu = :homuhomu
homun = :homuhomu

homuhomu, homu, homun is same.