一维数组
一维数组通常称为Vector
julia> a=[1,2,3] # 生成一个数组,其中的元素可以用undef表示不初始化3-element Vector{Int64}:123julia> a[1] # 通过下标访问1julia> a[1:2] # 通过范围访问2-element Vector{Int64}:12julia> a[1]=3 # 通过下标修改3julia> length(a) # 查看长度3julia> a=[0]1-element Vector{Int64}:0julia> push!(a,1) # 在末尾添加2-element Vector{Int64}:01julia> last(a) # 查看末尾1julia> pop!(a) # 去除末尾1julia> a1-element Vector{Int64}:0julia> pushfirst!(a,-1) # 在开头添加2-element Vector{Int64}:-10julia> first(a) # 查看开头-1julia> popfirst!(a) # 去除开头-1julia> a1-element Vector{Int64}:0julia> a=[1,2,3]3-element Vector{Int64}:123julia> fill!(a,0) # 将a中元素填满03-element Vector{Int64}:000
其它数组生成方式:
julia> zeros(Int,5) # 生成5个整型的0
5-element Vector{Int64}:
0
0
0
0
0
julia> ones(Int,5) # 生成5个整型的1
5-element Vector{Int64}:
1
1
1
1
1
julia> collect(1:4) # 上一章所述类型均可以用collect转化为一维数组
4-element Vector{Int64}:
1
2
3
4
julia> collect("猫"=>0)
2-element Vector{Union{Int64, String}}:
"猫"
0
多维数组
数组称为Array
julia> Vector # 一维数组是数组的特例
Vector{T} where T (alias for Array{T, 1} where T)
julia> Array{Int,3}(undef,2,2,2) # 生成一个未初始化的2x2x2数组
2×2×2 Array{Int64, 3}:
[:, :, 1] =
272741312 284121296
272741312 284121296
[:, :, 2] =
272755984 287668496
272755984 426754624
julia> v=[1 2 3;4 5 6;7 8 9] # 快速生成二维数组
3×3 Matrix{Int64}:
1 2 3
4 5 6
7 8 9
julia> Matrix # 二维数组是数组的特例
Matrix{T} where T (alias for Array{T, 2} where T)
julia> v[3,2] # 通过下标访问
8
julia> v[2:3,2:3] # 通过范围访问
2×2 Matrix{Int64}:
5 6
8 9
julia> v[1,1]=0 # 通过下标修改
0
注意:数组的数组与多维数组是不同的
