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

mfb777 · November 07, 2012 · Last by knwang replied at November 08, 2012 · 3366 hits

现在不得不这样:

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 里面 一般需要初始化数组的地方,总会有更好的实现方法的

You need to Sign in before reply, if you don't have an account, please Sign up first.