在Ruby中,符号(Symbol)和字面量(Literal)都是用来表示固定值的,但它们之间有一些关键的区别。
定义:
语法:
:foo
、:my_variable
等。你也可以使用符号字面量(Symbol Literal)的形式,即在冒号前加上#
,例如:#foo
。但请注意,这种表示法并不常用,而且实际上#foo
和:foo
在大多数情况下是等价的。123
、3.14
、0
等。"hello"
、'world'
等。注意字符串字面量使用双引号或单引号包围。[1, 2, 3]
、["a", "b", "c"]
等。{a: 1, b: 2}
、{"name" => "John", "age" => 30}
等。用途:
总之,符号和字面量都是Ruby中表示固定值的方式,但符号是不可变的唯一标识符,而字面量则表示各种数据类型的实际值。在实际编程中,你可以根据需要选择使用符号或字面量。