Ruby语言的并行赋值

并行赋值是按位置的。

#左侧数量等于右侧数量
a, b = 1, 2
p a, b  # 1 2

#左侧数量小于右侧数量
#右侧所有的值会被打包成数组字面量
a = 1, 2, 3
p a  # [1, 2, 3]
#右侧多余的值会被忽略
a, b = 1, 2, 3
p a, b  # 1 2
#右侧多余的值会被打包成数组字面量
a, b, *rest = 1, 2, 3, 4, 5
p a, b, rest  # 1 2 [3, 4, 5]

#左侧数量大于右侧数量
#左侧多余的变量会被赋予nil值
a, b, c = 1, 2
p a, b, c  # 1 2 nil

左侧的变量还支持占位语法。

#左侧数量等于右侧数量
a, = 1, 2
p a  # 1

#左侧数量小于右侧数量
a, = 1, 2, 3
p a  # 1

#左侧数量大于右侧数量
a, = 1
p a  # 1

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/experience/rubyexp/37518.html

(0)
huoxiaoqiang的头像huoxiaoqiang
上一篇 2025年5月13日 07:52
下一篇 2025年5月13日 19:41

相关推荐

发表回复

登录后才能评论