数组类型
在 Julia 中,Arrays 的类型由两个变量参数化:类型 T
和维度 D
(Array{T, D}
)。对于 1 维整数数组,类型为:
julia> x = [1, 2, 3];
julia> typeof(x)
Array{Int64, 1}
如果数组是二维矩阵,则 D
等于 2:
julia> x = [1 2 3; 4 5 6; 7 8 9]
julia> typeof(x)
Array{Int64, 2}
元素类型也可以是抽象类型:
julia> x = [1 2 3; 4 5 "6"; 7 8 9]
3x3 Array{Any,2}:
1 2 3
4 5 "6"
7 8 9
这里 Any
(抽象类型)是结果数组的类型。
创建数组时指定类型
当我们以上述方式创建数组时,Julia 将尽力推断出我们可能需要的正确类型。在上面的初始示例中,我们输入了看起来像整数的输入,因此 Julia 默认为默认的 Int64
类型。但是,有时我们可能希望更具体。在下面的示例中,我们指定我们希望类型为 Int8
:
x1 = Int8[1 2 3; 4 5 6; 7 8 9]
`typeof(x1)` ## Array{Int8,2}
我们甚至可以将类型指定为 Float64
之类的东西,即使我们以一种默认情况下可能被解释为整数的方式编写输入(例如,写 1
而不是 1.0
)。例如
x2 = Float64[1 2 3; 4 5 6; 7 8 9]