Julia键值对
键值对Pair类型用于建立两个对象的映射/关联性关系,是一种参数化的不可变复合类型,一旦构造不可更新修改。其内部的基本结构是:
Pair{A, B} <: Any
first::A
second::B
该类型有两个成员,分别是first与second;其中A与B是类型参数,分别控制键与值的类型。
通过构造函数可以很容易得到Pair
对象,例如:
julia> Pair(1, 3.2)
1=>3.2
julia> typeof(ans)
Pair{Int64, Float64}
julia> Pair{Float64, Int32}(Int64(1), Int64(5))
1.0=>5
julia> typeof(ans)
Pair{Float64, Int32}
也可以通过特有的语法Key=>Value
创建Pair对象,例如:
julia> a = 1=>3.2
1=>3.2
julia> b = 1.0=>5
1.0=>5
julia> c = Int32(1) => Float32(2.3)
1=>2.3f0
julia> typeof(c)
Pair{Int32, Float32}
对于已有的Pair对象,可以使用成员访问符获得其中的Key与Value值,例如:
或者使用索引进行键或值的访问:
julia> a[1] # 索引1对应键
1
julia> a[2] # 索引2对应值
3.2
julia> a[3] # 其他索引啥都不对应,报错
ERROR: BoundsError: attempt to access 1 => 3.2
at index [3]
但若试图修改,则会报错,例如:
另外,Pair的对象可以转换到元组类型,例如:
julia> Tuple(b)
(1.0, 5)
julia> Tuple(a)
(1, 3.2)
酷客网相关文章:
评论前必须登录!
注册