如何用给定值(不是对象引用)填充数组?

Ale*_*lec 2 arrays julia

作为这个问题的后续内容,如何在Julia中创建一个充满副本而不是引用的数组?

举一个例子,如何创建一个fill类似于a修改数组元素的函数?

julia> a = [[],[]]
2-element Array{Array{Any,1},1}:
 Any[]
 Any[]

julia> push!(a[1],1.0)
1-element Array{Any,1}:
 1.0

julia> a
2-element Array{Array{Any,1},1}:
 Any[1.0]
 Any[]

julia> b = fill([],2)
2-element Array{Array{Any,1},1}:
 Any[]
 Any[]

julia> push!(b[1],1.0)
1-element Array{Any,1}:
 1.0

julia> b
2-element Array{Array{Any,1},1}:
 Any[1.0]
 Any[1.0]
Run Code Online (Sandbox Code Playgroud)

Rez*_*lan 7

理解,可以帮助:

julia> a=[[] for i=1:4]
4-element Array{Array{Any,1},1}:
 Any[]
 Any[]
 Any[]
 Any[]

julia> push!(a[1],1)
1-element Array{Any,1}:
 1

julia> a
4-element Array{Array{Any,1},1}:
 Any[1]
 Any[]
 Any[]
 Any[]
Run Code Online (Sandbox Code Playgroud)