2012-10-09 161 views
-4

假设我有一个数组:如何从Ruby中的一维数组创建一个多维数组?

a=['hello','shivam','how','are','you'] 

...我希望把它变成一个多维数组这样如下:

[['hello','shivam'],'how',['are','you']] 

我该怎么办呢?

+6

什么决定哪些部分进入内部数组?我们如何知道“hello”和“shivam”进入阵列,“how''没有,......? –

+1

你的第二个数组并不是真正的多维数组,因为它需要是一个数组数组,而且你有一个数组和数组的字符串。 – vacawama

+0

这就是我所要求的如何在Ruby中创建这样的程序。如果想要。 –

回答

1
def transform ar 
    [ [ar[0], ar[1]], ar[2], [ar[3], ar[4]] ] 
end 

这不正是你想做的事,如果你不分享你想要订购的plattern我不能做更多...什么

+0

yueah我想要完全这样做...... !!! –

0

你可能会需要考虑使用zip方法:

a = [1,2,3] 
b = [4,5,6] 

a.zip(b) 
=> [[1, 4], [2, 5], [3, 6]] 

虽然这不会帮助你一路,你必须清楚里面也有一些奇异的数组项。