茱莉亚有结构像hashmaps?
答
是的!它确实有。以下是如何创建和访问Julia内部的一个。
# Creating the Dict in Julia
julia> hashmap = Dict("language"=>"julia","version"=>"0.6")
Dict{String,String} with 2 entries:
"language" => "julia"
"version" => "0.6"
# To access individual keys
julia> hashmap["language"]
"julia"
# To find the fields inside a dictionary
julia> fieldnames(hashmap)
8-element Array{Symbol,1}:
:slots
:keys
:vals
:ndel
:count
:age
:idxfloor
:maxprobe
# To iterate over the hashmap
julia> for i in hashmap
println(i)
end
"language"=>"julia"
"version"=>"0.6"
答
Julia Dict
被实现为散列映射。与Java一样,考虑接口与实现也很重要。
Associative
是一种抽象类型,大致对应于Java中的Map
;这些目的可通过他们的密钥索引,以获取相应的值:
value = associative[key]
Dict
是Associative
一个具体亚型,其为无序散列映射实现。
dict = Dict("a" => 1, "b" => 3)
@show dict["a"] # dict["a"] = 1