在 Ruby 中,符號(Symbol)和字面量(Literal)是兩種不同的概念,但它們之間可以進行轉換。
可以使用 to_sym
方法將字符串、數字或其他類型的字面量轉換為符號。例如:
s = "hello".to_sym
puts s # 輸出: :hello
注意,如果字符串中包含非法字符,to_sym
方法會引發錯誤。
可以使用 to_s
方法將符號轉換為字符串字面量。例如:
s = :hello
str = s.to_s
puts str # 輸出: hello
此外,符號也可以轉換為其他類型的字面量,例如數字。可以使用相應的轉換方法進行轉換,例如 to_i
、to_f
等。例如:
s = :123
num = s.to_i
puts num # 輸出: 123
需要注意的是,符號到數字的轉換可能會導致數據丟失,因為符號表示的是唯一的標識符,而不是具體的數值。因此,在進行轉換時需要謹慎處理。