创建 ruby 1.9 哈希时出错



例如,使用数字作为键创建 ruby 1.9.2 哈希语法时

day = {1: "Sunday", 2: "Monday"}

我收到以下错误

syntax error, unexpected '}', expecting end-of-input

但是当我以这种格式使用哈希语法时,它可以正常工作。

day = {one: "Sunday", two: "Monday"}

我使用的红宝石版本是 2.0.0p247

day = {one: "Sunday", two: "Monday"}

是新语法来自 1.9 版,与

day = {:one =>  "Sunday", :two => "Monday"}

只有键是符号,您可以使用该语法。

您必须在情况下使用day = {1 => "Sunday", 2 => "Monday"}

如果您的键不是符号,则必须使用 key => value 语法:

day = {1 => "Sunday", 2 => "Monday"}
#=> {1=>"Sunday", 2=>"Monday"}

你可以用这种方式创建一个哈希

day={}
day[:one] = "Sunday"
day[:two] = "Monday"

最新更新