刚刚在一些Ruby代码中看到了这样的内容:
def getis;gets.split.map(&:to_i);end
k,=getis # What is this line doing?
di=Array::new(k){Array::new(k)}
它使用Ruby的多重分配来分配数组的第一个元素:
a, = [1, 2, 3]
a #=> 1
要么:
a, b = [1, 2, 3]
a #=> 1
b #=> 2
您可以*
用来获取其余元素:
a, *b = [1, 2, 3]
a #=> 1
b #=> [2, 3]
要么:
*a, b = [1, 2, 3]
a #=> [1, 2]
b #=> 3
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句