ruby - ruby 中的空值,为什么零 [1] =1计算为零?

  显示原文与译文双语对照的内容
95 4

例如:

nil[1] #=> NoMethodError
nil[1]=1 #=> nil

这不仅仅是语法,因为它也发生在变量中:

a = nil
a[1] #=> NoMethodError
a[1]=1 #=> nil

真是奇怪

nil.method(:[]=) #=> NameError
[].method(:[]=) #=> #<Method...>

ruby 2.3.0 p0

时间:原作者:0个回答

...