【发布时间】:2014-05-09 09:49:43
【问题描述】:
当我做:symbol == :symbol 时,我发现这是真的。它们是一样的。
如果是这样,我们如何创建这样的数组:
a = [{:name=>"Michael"},{:name=>"John"}]
【问题讨论】:
-
为什么你认为这不可能?
-
那里没有矛盾。
a中的元素是不同的,而且数组可以包含重复的元素。您可能正在考虑哈希,在这种情况下键必须是唯一的,并且您确实不会在键集中找到两次出现的:symbol。 -
@DouglasFShearer 它只是让我感到困惑,因为第一个 :name 与另一个哈希中的第二个 :name 相同
-
key是一样的,但是每个hash都不一样。您不会看到两个或多个与哈希中的键相同的符号实例:
people = {name: 'Joe', name: 'Jane', name: 'Sally'}。要建立一些关于为什么这是非法的直觉,想想people[:name]应该产生什么。同样,a[0]和a[1]没有这样的概念困难。