在Julia中初始化一个空元数组

时间:2013-10-17 05:45:51

标签: julia

我无法弄清楚如何初始化一个空的元组数组。 manual说:

  

值元组的类型是值类型的元组...因此,类型元组可以在预期类型的​​任何地方使用。

然而这不起作用:

myarray = (Int64,Int64)[]

但这样做:

Int64[]

在空方括号前面看起来似乎是一种类型,但是元组类型不起作用。这种<type>[]语法是我能找到获得空类型数组的唯一方法(其他方法似乎产生了一堆#undef值)。是唯一的方法,如果是,我怎么能用元组键入数组?

BTW,我的用例是创建一个最初不确定长度的数组,并将元组推入循环中。

2 个答案:

答案 0 :(得分:10)

你可以为Array((Int,Int),0)做这件事。将方法添加到getindex以使(Int,Int)[]工作可能是可行的,但我不确定它是否值得。随意打开一个问题。

答案 1 :(得分:7)

对于寻找最新解决方案的人,

Array{Tuple{Int, Int}}(0)适用于v0.4

同样详细的方式0-element Array{Tuple{Int64,Int64},1}也适用于v0.4。

创建Array{Tuple{Int, Int}}(undef, 0)

请注意,在v1.0中,您需要编写

self.appliancesInGroupGridOpts = { angularCompileRows: true, enableColResize : true, rowData: null, checkboxSelection: true, enableSorting: true, columnDefs: [ { valueGetter: 'data.name', headerName: $filter('translate')('APPLIANCE.NAME'), suppressSizeToFit : true, template: '<span class="appliance-name">{{data.name}}</span>', checkboxSelection: true, width: 200 } , { valueGetter: 'data.updated', headerName: $filter('translate')('APPLIANCE_GROUP.PUBLISH.MODIFICATION_TIME'), suppressSizeToFit : true, template: '<span class="appliance-updated">{{data.updated}}</span>', checkboxSelection: true, width: 200 } ] ,