Julia可以处理具有1种以上类型元素的类型化数组吗?

时间:2019-05-09 17:37:48

标签: arrays types julia hierarchy

我想让构造函数/方法接受一个数组,但是该数组只能包含2种不同类型的元素。 例如:

Array{Union{Int64, String}} = [1, 2, "3"]

但是现在我想将数组创建为[1, 2, "3"](不指定类型),并让构造函数自动接受期望::Array{Union{Int64, String}}类型的参数的构造函数。 发生的情况是,[1, 2, "3"]默认为Any类型,因此我的构造方法不接受。

1 个答案:

答案 0 :(得分:1)

您可以按如下所示制作一个数组:

julia> Union{Int64, String}[1, 2, "3"]
3-element Array{Union{Int64, String},1}:
 1   
 2   
  "3"

手册中有关此目的的文档可以为found here。要引用该手册,

  

可以使用语法T [A,B,C,...]构造具有特定元素类型的数组。这将构造一个元素类型为T的一维数组,并初始化为包含元素A,B,C等。