初始化阵列数组以便即时构建

use*_*579 1 arrays julia

如何在julia中声明包含数组的数组?

我有a=Int32[]一个空的数组Int32(当然),但我想稍后在运行中构建类似的东西

if ...
    push!(a, [r,s]) # (*)
...
Run Code Online (Sandbox Code Playgroud)

在哪里rs是整数.我试过a=Int32[Int32[]]但是在做(*)时它不起作用.我没有具体的形状a,所以我需要声明它没有这个限制.

ggg*_*ggg 9

Int32[]创建Vector{Int32}这是一种Vector与元素类型Int32.你想要一个Vectorwith元素类型Vector{Int32},所以你可以使用Vector{Vector{Int32}}()Vector{Int32}[].请注意,这Vector{T}是一个别名Array{T,1},也就是Array元素类型T和1维的别名,因此当Julia打印出类型时,它不会使用该单词Vector.

julia> v=Vector{Vector{Int32}}()
0-element Array{Array{Int32,1},1}

julia> push!(v,[1,2,3])
1-element Array{Array{Int32,1},1}:
 Int32[1, 2, 3]
Run Code Online (Sandbox Code Playgroud)

要么

julia> x=Vector{Int32}[]
0-element Array{Array{Int32,1},1}

julia> push!(x,[4,5,6])
1-element Array{Array{Int32,1},1}:
 Int32[4, 5, 6]
Run Code Online (Sandbox Code Playgroud)