将一个变量的数组推入一个数组中

Mar*_*994 2 julia

我有这段代码:

for i=1:10
    v=[2i,i]
    @show v
    end
Run Code Online (Sandbox Code Playgroud)

我得到了这个结果:

v = [2, 1]
v = [4, 2]
v = [6, 3]
v = [8, 4]
v = [10, 5]
v = [12, 6]
v = [14, 7]
v = [16, 8]
v = [18, 9]
v = [20, 10]
Run Code Online (Sandbox Code Playgroud)

现在我想要做的是将所有这些输出收集到一个数组数组中,例如: [[2,1],[4,2],[6,3]]

而且我真的不知道该怎么做,我尝试了几种无效的解决方案。

小智 5

您可以为此使用数组推导式:

julia> x = [[2i,i] for i in 1:10]
10-element Array{Array{Int64,1},1}:
 [2, 1]  
 [4, 2]  
 [6, 3]  
 [8, 4]  
 [10, 5] 
 [12, 6] 
 [14, 7] 
 [16, 8] 
 [18, 9] 
 [20, 10]
Run Code Online (Sandbox Code Playgroud)

或者使用手动构建一个空的初始数组,并将内部数组一一推入其中的方法:

julia> y = []
0-element Array{Any,1}

julia> for i in 1:10
           push!(y,[2i,i])
       end

julia> y
10-element Array{Any,1}:
 [2, 1]  
 [4, 2]  
 [6, 3]  
 [8, 4]  
 [10, 5] 
 [12, 6] 
 [14, 7] 
 [16, 8] 
 [18, 9] 
 [20, 10]
Run Code Online (Sandbox Code Playgroud)