【发布时间】:2020-09-18 15:13:28
【问题描述】:
从我目前所读到的内容中,我知道一个符号总是指向相同的值。与字符串不同,字符串在 Ruby 中是可变的。意味着一个字符串可能不会一直具有相同的值。
但是,如果我创建一个哈希列表,例如这个:
persons = [
{first_name: "John", last_name: "Doe"},
{first_name: "Lisa", last_name: "Meyer"}
]
如果我现在这样做:
persons[1][:first_name]
然后我得到正确的值“Lisa”。
但它是如何工作的呢?
如果一个符号只能指向一个精确值:
如何区分第一个哈希的“first_name”-symbol 和第二个、第三个...哈希的“first_name”-symbol?
【问题讨论】:
-
您的问题非常不清楚。 “一个符号总是指向同一个值”是什么意思? Ruby 没有指针,那么“指向”是什么意思呢?
-
“一个符号总是指向同一个值”——这与哈希无关。此类语句引用符号的内部值。这意味着您不能拥有不同的
:first_name实例。这同样适用于整数:你不能有不同的1实例。
标签: ruby