这是有效的ruby语法吗?

Dam*_*che 1 ruby

hash = {:symbol, 'mental'}
Run Code Online (Sandbox Code Playgroud)

因为我发现以上点缀了我正在研究的项目,我无法弄清楚这是否是由于旧版本的Ruby而不是.

Rah*_*ali 10

Ruby 1.8当您按顺序拥有正确的键值对时有效.而且你需要在哈希创建中使用偶数个元素:

hash = {:symbol, 'mental'} 与...一样 hash = {:symbol => 'mental'}

一些例子:

hash = {:symbol, 'mental', :name,'abc'}
 => {:symbol=>"mental", :name=>"abc"}

hash = {:symbol, 'mental', :name,'abc', :b}
=>  Syntax Error
Run Code Online (Sandbox Code Playgroud)

  • 这种语法非常不寻常,因为它与1.9不兼容,所以无论它存在于哪里都会被标记出来. (2认同)