新手问题 怎样平行赋值初始化数组?

mfb777 · 2012年11月07日 · 最后由 knwang 回复于 2012年11月08日 · 3370 次阅读

现在不得不这样:

a1, a2, a3 ,a4 = [], [] ,[], []

有什么办法更简单一些?

为什么初始化

a1 = a2 = a3 = a4 = []

#2 楼 @Richie 这样数值都相同了,我需要每个都是独立的变量啊

#1 楼 @knwang 数组不初始化放不进去东西啊

虽然不推荐,但是你可以——

a1, a2, a3, a4 = Array.new(4, [])

其实还是原本的方式最直观。

@mfb777 猜想你是用了 array << obj 这种形式,所以要先初始化。@fredwu 说的没错,直接写好了,Array.new(4, []) 容易造成坑。

#4 楼 @mfb777

a = [1,2,3,4] - 没有初始化,放进东西了。

不是抬杠,Ruby 里面 一般需要初始化数组的地方,总会有更好的实现方法的

需要 登录 后方可回复, 如果你还没有账号请 注册新账号