在Awk中,关联数组默认是按照哈希表的方式存储,没有固定的顺序。如果想要按照键值递增的顺序访问关联数组,可以使用以下方法:
# 示例代码
#!/usr/bin/awk -f
BEGIN {
fruit["apple"] = 5
fruit["banana"] = 2
fruit["orange"] = 3
fruit["grape"] = 4
n = asorti(fruit, sorted_keys)
for (i = 1; i <= n; i++) {
key = sorted_keys[i]
value = fruit[key]
print key, value
}
}
# 示例代码
#!/usr/bin/awk -f
BEGIN {
PROCINFO["sorted_in"] = "@ind_num_asc"
fruit["apple"] = 5
fruit["banana"] = 2
fruit["orange"] = 3
fruit["grape"] = 4
for (key in fruit) {
value = fruit[key]
print key, value
}
}
以上两种方法都可以实现按照关联数组的键值递增的顺序遍历关联数组。