跳到主要内容

orderedmap

orderedmap 库提供有序映射(保持键插入顺序的 map),用于需要稳定遍历顺序的场景,如生成确定顺序的 JSON、配置项与报表字段。

典型使用场景:

  • 创建:orderedmap.New(maps...) 创建有序映射,按插入顺序保留键的次序,支持增删查与有序遍历。

与相邻库的关系:orderedmap 是数据结构工具,常与 json(保持字段顺序的序列化)、report/excel(有序字段输出)配合。

共 1 个函数

可变参数函数索引

函数参数返回值说明
orderedmap.Newmaps ...any*OrderedMap从零创建一个有序映射或从一个普通映射中创建一个有序映射,其的基本用法与普通映射相同,但内置方法可能不同

可变参数函数详情

New

New(maps ...any) *OrderedMap

从零创建一个有序映射或从一个普通映射中创建一个有序映射,其的基本用法与普通映射相同,但内置方法可能不同

值得注意的是,如果传入的是一个普通映射,使用此函数转换为有序映射并不能保证原有的顺序

如果需要保留原有顺序,可以使用 omap({"a": 1, "b": 2}) 来直接生成一个有序映射

可选参数

参数名类型说明
maps...any可选的初始映射;为空则创建一个空的有序映射

返回值

序号类型说明
r1*OrderedMap创建出的有序映射对象

示例

// VARS: 创建空的有序映射并按顺序写入
om = orderedmap.New()
om.Set("a", 1)
om.Set("b", 2)
// STDOUT: 按写入顺序打印键
println(om.Keys()) // OUT: [a b]
// assert: 长度与取值正确
assert om.Len() == 2, "ordered map should keep two keys"