shell中的map與array有很多的相似之處,array操作:
一、在使用map時,需要先宣告,否則結果可能與預期不同,array可以不宣告
declare -a map
二、初始化map
與array類似,可以使用括號直接初始化,也可以通過新增的方式來初始化資料,與array不同的是,括號直接初始化時使用的為乙個鍵值對,新增元素時,下標可以不是整數
map=(["aa"]="
11" ["
bb"]="22"
)map[
"name
"]="
val"
map[
""]="
pen"
三、輸出所有的key
若未使用declare宣告map,則此處將輸出0,與預期輸出不符,此處輸出語句格式比arry多了乙個!
echo $
四、輸出所有value
與array輸出格式相同
echo $
五、輸出map長度
與array輸出格式相同
echo $
六、遍歷,根據key找到對應的value
for key in $;doecho
$done
七、遍歷所有的key
for key in $;doecho
$key
done
八、遍歷所有的value
for val in $;doecho
$val
done
如上,可以發現,map與arry有很多的相似之處,在儲存上兩者最大的區別可能是array的key只能為整數,而map的key則可以為任何值
實際應用
stl中map的使用
map與set類似,都是乙個關聯式容器,但是與set不同的是他鍵值分離的,key,value 結構,在map結構中元素是不允許重複的。在學習的過程中,我們需要主要一些問題 就是在關聯式容器中,當資料很大的時候,使用其中的查詢演算法是很快速的,應該使用其提供的函式來實現查詢函式等等高,會比使用stl中...
C C 中map的使用
c 中的stl中有map這一資料型別,其作用就是把兩個資料關聯起來,下面給出他的例項 include 這一點必不可少 然後宣告map mapmapstudent 可以載入為其他的元素都可以 然後插入資料 mapstudent,insert pair 5,student 這種是通過pair方式插入,還...
STL中的map使用
set 集合 包含了經過排序了的資料,這些資料的值 value 必須是唯一的。map 對映 經過排序了的二元組的集合,map中的每個元素都是由兩個值組成,其中的key 鍵值,乙個map中的鍵值必須是唯一的 是在排序或搜尋時使用,它的值可以在容器中重新獲取 而另乙個值是該元素關聯的數值。map和set...