Ruby中的符號(Symbol)和字面量(Literal)都是用于表示固定值的特殊類型的常量。它們的作用和區(qū)別如下:
符號(Symbol)
字面量(Literal)
符號與字面量的區(qū)別
:symbol_name
;而字面量沒有特殊的前綴。示例:
# 定義符號
sym = :my_symbol
puts sym.inspect # 輸出: :my_symbol
# 定義字面量
lit = 42
puts lit.inspect # 輸出: 42
# 將符號作為哈希表的鍵
hash = { sym => "Hello, Symbol!" }
puts hash[sym] # 輸出: Hello, Symbol!
# 字面量作為變量的初始值
var = lit
puts var # 輸出: 42