我正在尝试在Julia中创建一个特殊类型的数组数组。
例如,我想创建一个保存整数值列表(数组)的列表。
我需要知道如何:
append!
/ push!
将特定数据结构的数组(在本例中为整数数组)添加到列表中我认为这是一个非常简单的问题(可能会在文档中的某处回答),但我以前的研究让我越来越困惑。
之间是否存在差异:
List = Int64[]
和
List = Array{Int64,1}
这样的事情对我不起作用:
ListOfList = Int64[Int64]
ListOfList = Array{Int64[],1}
ListOfList = Array{Array{Int64,1},1}
答案 0 :(得分:5)
您可以像这样构建数组数组:
# Initialize an array that can contain any values
listOfLists = Any[]
# Push some arrays into the array
push!(listOfLists, [1, 2, 3])
push!(listOfLists, [4, 5])
push!(listOfLists, ["Julia", "rocks"])
# You now have an array containing arrays
listOfLists
# 3-element Array{Any,1}:
# [1,2,3]
# [4,5]
# ASCIIString["Julia","rocks"]
要回答有关初始化差异的问题,请考虑以下事项。
List = Int64[]
typeof(List)
# Array{Int64,1}
List = Array{Int64,1}
typeof(List)
# DataType
前者实际上是将List
初始化为包含整数值的1维数组,而后者将List
设置为类型 Array{Int64,1}