gmap
42 分钟阅读
原文:https://pkg.go.dev/github.com/gogf/gf/v2@v2.6.4/container/gmap
Overview 概述
Package gmap provides most commonly used map container which also support concurrent-safe/unsafe switch feature.
软件包 gmap 提供了最常用的地图容器,它还支持并发安全/不安全交换功能。
常量
This section is empty.
变量
This section is empty.
函数
This section is empty.
类型
type AnyAnyMap
|
|
AnyAnyMap wraps map type map[interface{}]interface{}
and provides more map features.
AnyAnyMap 包装地图类型 map[interface{}]interface{}
并提供更多地图功能。
func NewAnyAnyMap
|
|
NewAnyAnyMap creates and returns an empty hash map. The parameter safe
is used to specify whether using map in concurrent-safety, which is false in default.
NewAnyAnyMap 创建并返回一个空的哈希映射。该参数 safe
用于指定是否在 concurrent-safety 中使用 map,默认为 false。
Example
|
|
func NewAnyAnyMapFrom
|
|
NewAnyAnyMapFrom creates and returns a hash map from given map data
. Note that, the param data
map will be set as the underlying data map(no deep copy), there might be some concurrent-safe issues when changing the map outside.
NewAnyAnyMapFrom 创建并返回来自给定映射 data
的哈希映射。请注意,参数 data
映射将设置为底层数据映射(无深度拷贝),在外部更改映射时可能会出现一些并发安全问题。
Example
|
|
(*AnyAnyMap) Clear
|
|
Clear deletes all data of the map, it will remake a new underlying data map.
清除会删除地图的所有数据,它将重新制作一个新的基础数据地图。
Example
|
|
(*AnyAnyMap) Clone
|
|
Clone returns a new hash map with copy of current map data.
克隆将返回一个新的哈希映射,其中包含当前映射数据的副本。
Example
|
|
(*AnyAnyMap) Contains
|
|
Contains checks whether a key exists. It returns true if the key
exists, or else false.
包含检查密钥是否存在。如果存在, key
则返回 true,否则返回 false。
Example
|
|
(*AnyAnyMap) DeepCopy
|
|
DeepCopy implements interface for deep copy of current type.
DeepCopy实现了当前类型的深度拷贝接口。
(*AnyAnyMap) Diff
|
|
Diff compares current map m
with map other
and returns their different keys. The returned addedKeys
are the keys that are in map m
but not in map other
. The returned removedKeys
are the keys that are in map other
but not in map m
. The returned updatedKeys
are the keys that are both in map m
and other
but their values and not equal (!=
).
Diff 将当前映射 m
与映射 other
进行比较,并返回它们的不同键。返回 addedKeys
的键在 map m
中但不在 map other
中。返回 removedKeys
的键在 map other
中但不在 map m
中。返回 updatedKeys
的键既在 map m
中, other
又在 但它们的值中且不相等 ( !=
)。
(*AnyAnyMap) FilterEmpty
|
|
FilterEmpty deletes all key-value pair of which the value is empty. Values like: 0, nil, false, “”, len(slice/map/chan) == 0 are considered empty.
FilterEmpty 删除所有值为空的键值对。像 0, nil, false, “”, len(slice/map/chan) == 0 这样的值被视为空。
Example
|
|
(*AnyAnyMap) FilterNil
|
|
FilterNil deletes all key-value pair of which the value is nil.
FilterNil 删除值为 nil 的所有键值对。
Example
|
|
(*AnyAnyMap) Flip
|
|
Flip exchanges key-value of the map to value-key.
Flip 将映射的键值交换为值键。
Example
|
|
(*AnyAnyMap) Get
|
|
Get returns the value by given key
.
Get 返回给定 key
的值。
Example
|
|
(*AnyAnyMap) GetOrSet
|
|
GetOrSet returns the value by key, or sets value with given value
if it does not exist and then returns this value.
GetOrSet 按键返回值,如果值不存在,则使用 given value
设置值,然后返回此值。
Example
|
|
(*AnyAnyMap) GetOrSetFunc
|
|
GetOrSetFunc returns the value by key, or sets value with returned value of callback function f
if it does not exist and then returns this value.
GetOrSetFunc 按键返回值,或者使用回调函数 f
的返回值设置值(如果不存在),然后返回此值。
Example
|
|
(*AnyAnyMap) GetOrSetFuncLock
|
|
GetOrSetFuncLock returns the value by key, or sets value with returned value of callback function f
if it does not exist and then returns this value.
GetOrSetFuncLock 按键返回值,或者使用回调函数 f
的返回值设置值(如果不存在),然后返回此值。
GetOrSetFuncLock differs with GetOrSetFunc function is that it executes function f
with mutex.Lock of the hash map.
GetOrSetFuncLock 与 GetOrSetFunc 函数的不同之处在于它使用互斥锁执行函数 f
。哈希映射的锁定。
Example
|
|
(*AnyAnyMap) GetVar
|
|
GetVar returns a Var with the value by given key
. The returned Var is un-concurrent safe.
GetVar 返回一个 Var,其值为 给定 key
。返回的 Var 是非并发安全的。
Example
|
|
(*AnyAnyMap) GetVarOrSet
|
|
GetVarOrSet returns a Var with result from GetOrSet. The returned Var is un-concurrent safe.
GetVarOrSet 返回一个 Var,其中包含来自 GetOrSet 的结果。返回的 Var 是非并发安全的。
Example
|
|
(*AnyAnyMap) GetVarOrSetFunc
|
|
GetVarOrSetFunc returns a Var with result from GetOrSetFunc. The returned Var is un-concurrent safe.
GetVarOrSetFunc 返回一个 Var,其中包含来自 GetOrSetFunc 的结果。返回的 Var 是非并发安全的。
Example
|
|
(*AnyAnyMap) GetVarOrSetFuncLock
|
|
GetVarOrSetFuncLock returns a Var with result from GetOrSetFuncLock. The returned Var is un-concurrent safe.
GetVarOrSetFuncLock 返回一个 Var,其中包含来自 GetOrSetFuncLock 的结果。返回的 Var 是非并发安全的。
Example
|
|
(*AnyAnyMap) IsEmpty
|
|
IsEmpty checks whether the map is empty. It returns true if map is empty, or else false.
IsEmpty 检查地图是否为空。如果 map 为空,则返回 true,否则返回 false。
Example
|
|
(*AnyAnyMap) IsSubOf
|
|
IsSubOf checks whether the current map is a sub-map of other
.
IsSubOf 检查当前映射是否是 的 other
子映射。
(*AnyAnyMap) Iterator
|
|
Iterator iterates the hash map readonly with custom callback function f
. If f
returns true, then it continues iterating; or false to stop.
迭代器使用自定义回调函数 f
迭代哈希映射只读。如果 f
返回 true,则继续迭代;或 false 停止。
Example
|
|
(*AnyAnyMap) Keys
|
|
Keys returns all keys of the map as a slice.
Keys 将地图的所有键作为切片返回。
Example
|
|
(*AnyAnyMap) LockFunc
|
|
LockFunc locks writing with given callback function f
within RWMutex.Lock.
LockFunc 在 RWMutex.Lock 中使用给定的回调函数 f
锁定写入。
Example
|
|
(*AnyAnyMap) Map
|
|
Map returns the underlying data map. Note that, if it’s in concurrent-safe usage, it returns a copy of underlying data, or else a pointer to the underlying data.
Map 返回基础数据映射。请注意,如果它处于并发安全使用状态,它将返回基础数据的副本,或者返回指向基础数据的指针。
Example
|
|
(*AnyAnyMap) MapCopy
|
|
MapCopy returns a shallow copy of the underlying data of the hash map.
MapCopy 返回哈希映射基础数据的浅层副本。
Example
|
|
(*AnyAnyMap) MapStrAny
|
|
MapStrAny returns a copy of the underlying data of the map as map[string]interface{}.
MapStrAny 以 map[string]interface{} 的形式返回地图基础数据的副本。
Example
|
|
(AnyAnyMap) MarshalJSON
|
|
MarshalJSON implements the interface MarshalJSON for json.Marshal.
MarshalJSON 实现 json 的接口 MarshalJSON。元帅。
Example
|
|
(*AnyAnyMap) Merge
|
|
Merge merges two hash maps. The other
map will be merged into the map m
.
合并合并两个哈希映射。 other
地图将合并到地图 m
中。
Example
|
|
(*AnyAnyMap) Pop
|
|
Pop retrieves and deletes an item from the map.
Pop 从地图中检索和删除项目。
Example
|
|
(*AnyAnyMap) Pops
|
|
Pops retrieves and deletes size
items from the map. It returns all items if size == -1.
Pops 从地图中检索和删除 size
项目。如果大小 == -1,则返回所有项目。
Example
|
|
(*AnyAnyMap) RLockFunc
|
|
RLockFunc locks reading with given callback function f
within RWMutex.RLock.
RLockFunc 在 RWMutex.RLock 中使用给定的回调函数 f
锁定读取。
Example
|
|
(*AnyAnyMap) Remove
|
|
Remove deletes value from map by given key
, and return this deleted value.
按给定 key
从映射中删除删除值,并返回此删除值。
Example
|
|
(*AnyAnyMap) Removes
|
|
Removes batch deletes values of the map by keys.
删除按键批量删除映射的值。
Example
|
|
(*AnyAnyMap) Replace
|
|
Replace the data of the map with given data
.
将地图的数据替换为给定 data
的 .
Example
|
|
(*AnyAnyMap) Search
|
|
Search searches the map with given key
. Second return parameter found
is true if key was found, otherwise false.
搜索 使用给定 key
的 .如果找到键,则第二个返回参数 found
为 true,否则为 false。
Example
|
|
(*AnyAnyMap) Set
|
|
Set sets key-value to the hash map.
Set 将 key-value 设置为哈希映射。
Example
|
|
(*AnyAnyMap) SetIfNotExist
|
|
SetIfNotExist sets value
to the map if the key
does not exist, and then returns true. It returns false if key
exists, and value
would be ignored.
如果 不存在 key
,则 SetIfNotExist 设置为 value
映射,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
Example
|
|
(*AnyAnyMap) SetIfNotExistFunc
|
|
SetIfNotExistFunc sets value with return value of callback function f
, and then returns true. It returns false if key
exists, and value
would be ignored.
SetIfNotExistFunc 使用回调函数 f
的返回值设置值,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
Example
|
|
(*AnyAnyMap) SetIfNotExistFuncLock
|
|
SetIfNotExistFuncLock sets value with return value of callback function f
, and then returns true. It returns false if key
exists, and value
would be ignored.
SetIfNotExistFuncLock 使用回调函数 f
的返回值设置值,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
SetIfNotExistFuncLock differs with SetIfNotExistFunc function is that it executes function f
with mutex.Lock of the hash map.
SetIfNotExistFuncLock 与 SetIfNotExistFunc 函数的不同之处在于它使用互斥锁执行函数 f
。哈希映射的锁定。
Example
|
|
(*AnyAnyMap) Sets
|
|
Sets batch sets key-values to the hash map.
将批处理设置键值设置为哈希映射。
Example
|
|
(*AnyAnyMap) Size
|
|
Size returns the size of the map.
Size 返回地图的大小。
Example
|
|
(*AnyAnyMap) String
|
|
String returns the map as a string.
String 以字符串形式返回映射。
Example
|
|
(*AnyAnyMap) UnmarshalJSON
|
|
UnmarshalJSON implements the interface UnmarshalJSON for json.Unmarshal.
UnmarshalJSON 实现 json 的接口 UnmarshalJSON。元帅。
Example
|
|
(*AnyAnyMap) UnmarshalValue
|
|
UnmarshalValue is an interface implement which sets any type of value for map.
UnmarshalValue 是一个接口实现,用于为 map 设置任何类型的值。
Example
|
|
(*AnyAnyMap) Values
|
|
Values returns all values of the map as a slice.
Values 以切片的形式返回地图的所有值。
Example
|
|
type HashMap
|
|
type IntAnyMap
|
|
IntAnyMap implements map[int]interface{} with RWMutex that has switch.
IntAnyMap 使用具有 switch 的 RWMutex 实现 map[int]interface{}。
func NewIntAnyMap
|
|
NewIntAnyMap returns an empty IntAnyMap object. The parameter safe
is used to specify whether using map in concurrent-safety, which is false in default.
NewIntAnyMap 返回一个空的 IntAnyMap 对象。该参数 safe
用于指定是否在 concurrent-safety 中使用 map,默认为 false。
Example
|
|
func NewIntAnyMapFrom
|
|
NewIntAnyMapFrom creates and returns a hash map from given map data
. Note that, the param data
map will be set as the underlying data map(no deep copy), there might be some concurrent-safe issues when changing the map outside.
NewIntAnyMapFrom 从给定的映射 data
创建并返回哈希映射。请注意,参数 data
映射将设置为底层数据映射(无深度拷贝),在外部更改映射时可能会出现一些并发安全问题。
Example
|
|
(*IntAnyMap) Clear
|
|
Clear deletes all data of the map, it will remake a new underlying data map.
清除会删除地图的所有数据,它将重新制作一个新的基础数据地图。
Example
|
|
(*IntAnyMap) Clone
|
|
Clone returns a new hash map with copy of current map data.
克隆将返回一个新的哈希映射,其中包含当前映射数据的副本。
Example
|
|
(*IntAnyMap) Contains
|
|
Contains checks whether a key exists. It returns true if the key
exists, or else false.
包含检查密钥是否存在。如果存在, key
则返回 true,否则返回 false。
Example
|
|
(*IntAnyMap) DeepCopy
|
|
DeepCopy implements interface for deep copy of current type.
DeepCopy实现了当前类型的深度拷贝接口。
(*IntAnyMap) Diff
|
|
Diff compares current map m
with map other
and returns their different keys. The returned addedKeys
are the keys that are in map m
but not in map other
. The returned removedKeys
are the keys that are in map other
but not in map m
. The returned updatedKeys
are the keys that are both in map m
and other
but their values and not equal (!=
).
Diff 将当前映射 m
与映射 other
进行比较,并返回它们的不同键。返回 addedKeys
的键在 map m
中但不在 map other
中。返回 removedKeys
的键在 map other
中但不在 map m
中。返回 updatedKeys
的键既在 map m
中, other
又在 但它们的值中且不相等 ( !=
)。
(*IntAnyMap) FilterEmpty
|
|
FilterEmpty deletes all key-value pair of which the value is empty. Values like: 0, nil, false, “”, len(slice/map/chan) == 0 are considered empty.
FilterEmpty 删除所有值为空的键值对。像 0, nil, false, “”, len(slice/map/chan) == 0 这样的值被视为空。
Example
|
|
(*IntAnyMap) FilterNil
|
|
FilterNil deletes all key-value pair of which the value is nil.
FilterNil 删除值为 nil 的所有键值对。
Example
|
|
(*IntAnyMap) Flip
|
|
Flip exchanges key-value of the map to value-key.
Flip 将映射的键值交换为值键。
Example
|
|
(*IntAnyMap) Get
|
|
Get returns the value by given key
.
Get 返回给定 key
的值。
Example
|
|
(*IntAnyMap) GetOrSet
|
|
GetOrSet returns the value by key, or sets value with given value
if it does not exist and then returns this value.
GetOrSet 按键返回值,如果值不存在,则使用 given value
设置值,然后返回此值。
Example
|
|
(*IntAnyMap) GetOrSetFunc
|
|
GetOrSetFunc returns the value by key, or sets value with returned value of callback function f
if it does not exist and returns this value.
GetOrSetFunc 按键返回值,或者使用回调函数 f
的返回值设置值(如果不存在)并返回此值。
Example
|
|
(*IntAnyMap) GetOrSetFuncLock
|
|
GetOrSetFuncLock returns the value by key, or sets value with returned value of callback function f
if it does not exist and returns this value.
GetOrSetFuncLock 按键返回值,或者使用回调函数 f
的返回值设置值(如果不存在)并返回此值。
GetOrSetFuncLock differs with GetOrSetFunc function is that it executes function f
with mutex.Lock of the hash map.
GetOrSetFuncLock 与 GetOrSetFunc 函数的不同之处在于它使用互斥锁执行函数 f
。哈希映射的锁定。
Example
|
|
(*IntAnyMap) GetVar
|
|
GetVar returns a Var with the value by given key
. The returned Var is un-concurrent safe.
GetVar 返回一个 Var,其值为 给定 key
。返回的 Var 是非并发安全的。
Example
|
|
(*IntAnyMap) GetVarOrSet
|
|
GetVarOrSet returns a Var with result from GetVarOrSet. The returned Var is un-concurrent safe.
GetVarOrSet 返回一个 Var,其中包含来自 GetVarOrSet 的结果。返回的 Var 是非并发安全的。
Example
|
|
(*IntAnyMap) GetVarOrSetFunc
|
|
GetVarOrSetFunc returns a Var with result from GetOrSetFunc. The returned Var is un-concurrent safe.
GetVarOrSetFunc 返回一个 Var,其中包含来自 GetOrSetFunc 的结果。返回的 Var 是非并发安全的。
Example
|
|
(*IntAnyMap) GetVarOrSetFuncLock
|
|
GetVarOrSetFuncLock returns a Var with result from GetOrSetFuncLock. The returned Var is un-concurrent safe.
GetVarOrSetFuncLock 返回一个 Var,其中包含来自 GetOrSetFuncLock 的结果。返回的 Var 是非并发安全的。
Example
|
|
(*IntAnyMap) IsEmpty
|
|
IsEmpty checks whether the map is empty. It returns true if map is empty, or else false.
IsEmpty 检查地图是否为空。如果 map 为空,则返回 true,否则返回 false。
Example
|
|
(*IntAnyMap) IsSubOf
|
|
IsSubOf checks whether the current map is a sub-map of other
.
IsSubOf 检查当前映射是否是 的 other
子映射。
(*IntAnyMap) Iterator
|
|
Iterator iterates the hash map readonly with custom callback function f
. If f
returns true, then it continues iterating; or false to stop.
迭代器使用自定义回调函数 f
迭代哈希映射只读。如果 f
返回 true,则继续迭代;或 false 停止。
Example
|
|
(*IntAnyMap) Keys
|
|
Keys returns all keys of the map as a slice.
Keys 将地图的所有键作为切片返回。
Example
|
|
(*IntAnyMap) LockFunc
|
|
LockFunc locks writing with given callback function f
within RWMutex.Lock.
LockFunc 在 RWMutex.Lock 中使用给定的回调函数 f
锁定写入。
Example
|
|
(*IntAnyMap) Map
|
|
Map returns the underlying data map. Note that, if it’s in concurrent-safe usage, it returns a copy of underlying data, or else a pointer to the underlying data.
Map 返回基础数据映射。请注意,如果它处于并发安全使用状态,它将返回基础数据的副本,或者返回指向基础数据的指针。
Example
|
|
(*IntAnyMap) MapCopy
|
|
MapCopy returns a copy of the underlying data of the hash map.
MapCopy 返回哈希映射的基础数据的副本。
Example
|
|
(*IntAnyMap) MapStrAny
|
|
MapStrAny returns a copy of the underlying data of the map as map[string]interface{}.
MapStrAny 以 map[string]interface{} 的形式返回地图基础数据的副本。
Example
|
|
(IntAnyMap) MarshalJSON
|
|
MarshalJSON implements the interface MarshalJSON for json.Marshal.
MarshalJSON 实现 json 的接口 MarshalJSON。元帅。
Example
|
|
(*IntAnyMap) Merge
|
|
Merge merges two hash maps. The other
map will be merged into the map m
.
合并合并两个哈希映射。 other
地图将合并到地图 m
中。
Example
|
|
(*IntAnyMap) Pop
|
|
Pop retrieves and deletes an item from the map.
Pop 从地图中检索和删除项目。
Example
|
|
(*IntAnyMap) Pops
|
|
Pops retrieves and deletes size
items from the map. It returns all items if size == -1.
Pops 从地图中检索和删除 size
项目。如果大小 == -1,则返回所有项目。
Example
|
|
(*IntAnyMap) RLockFunc
|
|
RLockFunc locks reading with given callback function f
within RWMutex.RLock.
RLockFunc 在 RWMutex.RLock 中使用给定的回调函数 f
锁定读取。
Example
|
|
(*IntAnyMap) Remove
|
|
Remove deletes value from map by given key
, and return this deleted value.
按给定 key
从映射中删除删除值,并返回此删除值。
Example
|
|
(*IntAnyMap) Removes
|
|
Removes batch deletes values of the map by keys.
删除按键批量删除映射的值。
Example
|
|
(*IntAnyMap) Replace
|
|
Replace the data of the map with given data
.
将地图的数据替换为给定 data
的 .
Example
|
|
(*IntAnyMap) Search
|
|
Search searches the map with given key
. Second return parameter found
is true if key was found, otherwise false.
搜索 使用给定 key
的 .如果找到键,则第二个返回参数 found
为 true,否则为 false。
Example
|
|
(*IntAnyMap) Set
|
|
Set sets key-value to the hash map.
Set 将 key-value 设置为哈希映射。
Example
|
|
(*IntAnyMap) SetIfNotExist
|
|
SetIfNotExist sets value
to the map if the key
does not exist, and then returns true. It returns false if key
exists, and value
would be ignored.
如果 不存在 key
,则 SetIfNotExist 设置为 value
映射,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
Example
|
|
(*IntAnyMap) SetIfNotExistFunc
|
|
SetIfNotExistFunc sets value with return value of callback function f
, and then returns true. It returns false if key
exists, and value
would be ignored.
SetIfNotExistFunc 使用回调函数 f
的返回值设置值,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
Example
|
|
(*IntAnyMap) SetIfNotExistFuncLock
|
|
SetIfNotExistFuncLock sets value with return value of callback function f
, and then returns true. It returns false if key
exists, and value
would be ignored.
SetIfNotExistFuncLock 使用回调函数 f
的返回值设置值,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
SetIfNotExistFuncLock differs with SetIfNotExistFunc function is that it executes function f
with mutex.Lock of the hash map.
SetIfNotExistFuncLock 与 SetIfNotExistFunc 函数的不同之处在于它使用互斥锁执行函数 f
。哈希映射的锁定。
Example
|
|
(*IntAnyMap) Sets
|
|
Sets batch sets key-values to the hash map.
将批处理设置键值设置为哈希映射。
Example
|
|
(*IntAnyMap) Size
|
|
Size returns the size of the map.
Size 返回地图的大小。
Example
|
|
(*IntAnyMap) String
|
|
String returns the map as a string.
String 以字符串形式返回映射。
Example
|
|
(*IntAnyMap) UnmarshalJSON
|
|
UnmarshalJSON implements the interface UnmarshalJSON for json.Unmarshal.
UnmarshalJSON 实现 json 的接口 UnmarshalJSON。元帅。
Example
|
|
(*IntAnyMap) UnmarshalValue
|
|
UnmarshalValue is an interface implement which sets any type of value for map.
UnmarshalValue 是一个接口实现,用于为 map 设置任何类型的值。
Example
|
|
(*IntAnyMap) Values
|
|
Values returns all values of the map as a slice.
Values 以切片的形式返回地图的所有值。
Example
|
|
type IntIntMap
|
|
IntIntMap implements map[int]int with RWMutex that has switch.
IntIntMap 使用具有 switch 的 RWMutex 实现 map[int]int。
func NewIntIntMap
|
|
NewIntIntMap returns an empty IntIntMap object. The parameter safe
is used to specify whether using map in concurrent-safety, which is false in default.
NewIntIntMap 返回一个空的 IntIntMap 对象。该参数 safe
用于指定是否在 concurrent-safety 中使用 map,默认为 false。
Example
|
|
func NewIntIntMapFrom
|
|
NewIntIntMapFrom creates and returns a hash map from given map data
. Note that, the param data
map will be set as the underlying data map(no deep copy), there might be some concurrent-safe issues when changing the map outside.
NewIntIntMapFrom 从给定映射 data
创建并返回哈希映射。请注意,参数 data
映射将设置为底层数据映射(无深度拷贝),在外部更改映射时可能会出现一些并发安全问题。
Example
|
|
(*IntIntMap) Clear
|
|
Clear deletes all data of the map, it will remake a new underlying data map.
清除会删除地图的所有数据,它将重新制作一个新的基础数据地图。
Example
|
|
(*IntIntMap) Clone
|
|
Clone returns a new hash map with copy of current map data.
克隆将返回一个新的哈希映射,其中包含当前映射数据的副本。
Example
|
|
(*IntIntMap) Contains
|
|
Contains checks whether a key exists. It returns true if the key
exists, or else false.
包含检查密钥是否存在。如果存在, key
则返回 true,否则返回 false。
Example
|
|
(*IntIntMap) DeepCopy
|
|
DeepCopy implements interface for deep copy of current type.
DeepCopy实现了当前类型的深度拷贝接口。
(*IntIntMap) Diff
|
|
Diff compares current map m
with map other
and returns their different keys. The returned addedKeys
are the keys that are in map m
but not in map other
. The returned removedKeys
are the keys that are in map other
but not in map m
. The returned updatedKeys
are the keys that are both in map m
and other
but their values and not equal (!=
).
Diff 将当前映射 m
与映射 other
进行比较,并返回它们的不同键。返回 addedKeys
的键在 map m
中但不在 map other
中。返回 removedKeys
的键在 map other
中但不在 map m
中。返回 updatedKeys
的键既在 map m
中, other
又在 但它们的值中且不相等 ( !=
)。
(*IntIntMap) FilterEmpty
|
|
FilterEmpty deletes all key-value pair of which the value is empty. Values like: 0, nil, false, “”, len(slice/map/chan) == 0 are considered empty.
FilterEmpty 删除所有值为空的键值对。像 0, nil, false, “”, len(slice/map/chan) == 0 这样的值被视为空。
Example
|
|
(*IntIntMap) Flip
|
|
Flip exchanges key-value of the map to value-key.
Flip 将映射的键值交换为值键。
Example
|
|
(*IntIntMap) Get
|
|
Get returns the value by given key
.
Get 返回给定 key
的值。
Example
|
|
(*IntIntMap) GetOrSet
|
|
GetOrSet returns the value by key, or sets value with given value
if it does not exist and then returns this value.
GetOrSet 按键返回值,如果值不存在,则使用 given value
设置值,然后返回此值。
Example
|
|
(*IntIntMap) GetOrSetFunc
|
|
GetOrSetFunc returns the value by key, or sets value with returned value of callback function f
if it does not exist and returns this value.
GetOrSetFunc 按键返回值,或者使用回调函数 f
的返回值设置值(如果不存在)并返回此值。
Example
|
|
(*IntIntMap) GetOrSetFuncLock
|
|
GetOrSetFuncLock returns the value by key, or sets value with returned value of callback function f
if it does not exist and returns this value.
GetOrSetFuncLock 按键返回值,或者使用回调函数 f
的返回值设置值(如果不存在)并返回此值。
GetOrSetFuncLock differs with GetOrSetFunc function is that it executes function f
with mutex.Lock of the hash map.
GetOrSetFuncLock 与 GetOrSetFunc 函数的不同之处在于它使用互斥锁执行函数 f
。哈希映射的锁定。
Example
|
|
(*IntIntMap) IsEmpty
|
|
IsEmpty checks whether the map is empty. It returns true if map is empty, or else false.
IsEmpty 检查地图是否为空。如果 map 为空,则返回 true,否则返回 false。
Example
|
|
(*IntIntMap) IsSubOf
|
|
IsSubOf checks whether the current map is a sub-map of other
.
IsSubOf 检查当前映射是否是 的 other
子映射。
(*IntIntMap) Iterator
|
|
Iterator iterates the hash map readonly with custom callback function f
. If f
returns true, then it continues iterating; or false to stop.
迭代器使用自定义回调函数 f
迭代哈希映射只读。如果 f
返回 true,则继续迭代;或 false 停止。
Example
|
|
(*IntIntMap) Keys
|
|
Keys returns all keys of the map as a slice.
Keys 将地图的所有键作为切片返回。
Example
|
|
(*IntIntMap) LockFunc
|
|
LockFunc locks writing with given callback function f
within RWMutex.Lock.
LockFunc 在 RWMutex.Lock 中使用给定的回调函数 f
锁定写入。
Example
|
|
(*IntIntMap) Map
|
|
Map returns the underlying data map. Note that, if it’s in concurrent-safe usage, it returns a copy of underlying data, or else a pointer to the underlying data.
Map 返回基础数据映射。请注意,如果它处于并发安全使用状态,它将返回基础数据的副本,或者返回指向基础数据的指针。
Example
|
|
(*IntIntMap) MapCopy
|
|
MapCopy returns a copy of the underlying data of the hash map.
MapCopy 返回哈希映射的基础数据的副本。
Example
|
|
(*IntIntMap) MapStrAny
|
|
MapStrAny returns a copy of the underlying data of the map as map[string]interface{}.
MapStrAny 以 map[string]interface{} 的形式返回地图基础数据的副本。
Example
|
|
(IntIntMap) MarshalJSON
|
|
MarshalJSON implements the interface MarshalJSON for json.Marshal.
MarshalJSON 实现 json 的接口 MarshalJSON。元帅。
Example
|
|
(*IntIntMap) Merge
|
|
Merge merges two hash maps. The other
map will be merged into the map m
.
合并合并两个哈希映射。 other
地图将合并到地图 m
中。
Example
|
|
(*IntIntMap) Pop
|
|
Pop retrieves and deletes an item from the map.
Pop 从地图中检索和删除项目。
Example
|
|
(*IntIntMap) Pops
|
|
Pops retrieves and deletes size
items from the map. It returns all items if size == -1.
Pops 从地图中检索和删除 size
项目。如果大小 == -1,则返回所有项目。
Example
|
|
(*IntIntMap) RLockFunc
|
|
RLockFunc locks reading with given callback function f
within RWMutex.RLock.
RLockFunc 在 RWMutex.RLock 中使用给定的回调函数 f
锁定读取。
Example
|
|
(*IntIntMap) Remove
|
|
Remove deletes value from map by given key
, and return this deleted value.
按给定 key
从映射中删除删除值,并返回此删除值。
Example
|
|
(*IntIntMap) Removes
|
|
Removes batch deletes values of the map by keys.
删除按键批量删除映射的值。
Example
|
|
(*IntIntMap) Replace
|
|
Replace the data of the map with given data
.
将地图的数据替换为给定 data
的 .
Example
|
|
(*IntIntMap) Search
|
|
Search searches the map with given key
. Second return parameter found
is true if key was found, otherwise false.
搜索 使用给定 key
的 .如果找到键,则第二个返回参数 found
为 true,否则为 false。
Example
|
|
(*IntIntMap) Set
|
|
Set sets key-value to the hash map.
Set 将 key-value 设置为哈希映射。
Example
|
|
(*IntIntMap) SetIfNotExist
|
|
SetIfNotExist sets value
to the map if the key
does not exist, and then returns true. It returns false if key
exists, and value
would be ignored.
如果 不存在 key
,则 SetIfNotExist 设置为 value
映射,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
Example
|
|
(*IntIntMap) SetIfNotExistFunc
|
|
SetIfNotExistFunc sets value with return value of callback function f
, and then returns true. It returns false if key
exists, and value
would be ignored.
SetIfNotExistFunc 使用回调函数 f
的返回值设置值,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
Example
|
|
(*IntIntMap) SetIfNotExistFuncLock
|
|
SetIfNotExistFuncLock sets value with return value of callback function f
, and then returns true. It returns false if key
exists, and value
would be ignored.
SetIfNotExistFuncLock 使用回调函数 f
的返回值设置值,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
SetIfNotExistFuncLock differs with SetIfNotExistFunc function is that it executes function f
with mutex.Lock of the hash map.
SetIfNotExistFuncLock 与 SetIfNotExistFunc 函数的不同之处在于它使用互斥锁执行函数 f
。哈希映射的锁定。
Example
|
|
(*IntIntMap) Sets
|
|
Sets batch sets key-values to the hash map.
将批处理设置键值设置为哈希映射。
Example
|
|
(*IntIntMap) Size
|
|
Size returns the size of the map.
Size 返回地图的大小。
Example
|
|
(*IntIntMap) String
|
|
String returns the map as a string.
String 以字符串形式返回映射。
Example
|
|
(*IntIntMap) UnmarshalJSON
|
|
UnmarshalJSON implements the interface UnmarshalJSON for json.Unmarshal.
UnmarshalJSON 实现 json 的接口 UnmarshalJSON。元帅。
Example
|
|
(*IntIntMap) UnmarshalValue
|
|
UnmarshalValue is an interface implement which sets any type of value for map.
UnmarshalValue 是一个接口实现,用于为 map 设置任何类型的值。
Example
|
|
(*IntIntMap) Values
|
|
Values returns all values of the map as a slice.
Values 以切片的形式返回地图的所有值。
Example
|
|
type IntStrMap
|
|
IntStrMap implements map[int]string with RWMutex that has switch.
IntStrMap 使用具有 switch 的 RWMutex 实现 map[int]字符串。
func NewIntStrMap
|
|
NewIntStrMap returns an empty IntStrMap object. The parameter safe
is used to specify whether using map in concurrent-safety, which is false in default.
NewIntStrMap 返回一个空的 IntStrMap 对象。该参数 safe
用于指定是否在 concurrent-safety 中使用 map,默认为 false。
func NewIntStrMapFrom
|
|
NewIntStrMapFrom creates and returns a hash map from given map data
. Note that, the param data
map will be set as the underlying data map(no deep copy), there might be some concurrent-safe issues when changing the map outside.
NewIntStrMapFrom 从给定映射 data
创建并返回哈希映射。请注意,参数 data
映射将设置为底层数据映射(无深度拷贝),在外部更改映射时可能会出现一些并发安全问题。
(*IntStrMap) Clear
|
|
Clear deletes all data of the map, it will remake a new underlying data map.
清除会删除地图的所有数据,它将重新制作一个新的基础数据地图。
(*IntStrMap) Clone
|
|
Clone returns a new hash map with copy of current map data.
克隆将返回一个新的哈希映射,其中包含当前映射数据的副本。
(*IntStrMap) Contains
|
|
Contains checks whether a key exists. It returns true if the key
exists, or else false.
包含检查密钥是否存在。如果存在, key
则返回 true,否则返回 false。
(*IntStrMap) DeepCopy
|
|
DeepCopy implements interface for deep copy of current type.
DeepCopy实现了当前类型的深度拷贝接口。
(*IntStrMap) Diff
|
|
Diff compares current map m
with map other
and returns their different keys. The returned addedKeys
are the keys that are in map m
but not in map other
. The returned removedKeys
are the keys that are in map other
but not in map m
. The returned updatedKeys
are the keys that are both in map m
and other
but their values and not equal (!=
).
Diff 将当前映射 m
与映射 other
进行比较,并返回它们的不同键。返回 addedKeys
的键在 map m
中但不在 map other
中。返回 removedKeys
的键在 map other
中但不在 map m
中。返回 updatedKeys
的键既在 map m
中, other
又在 但它们的值中且不相等 ( !=
)。
(*IntStrMap) FilterEmpty
|
|
FilterEmpty deletes all key-value pair of which the value is empty. Values like: 0, nil, false, “”, len(slice/map/chan) == 0 are considered empty.
FilterEmpty 删除所有值为空的键值对。像 0, nil, false, “”, len(slice/map/chan) == 0 这样的值被视为空。
(*IntStrMap) Flip
|
|
Flip exchanges key-value of the map to value-key.
Flip 将映射的键值交换为值键。
(*IntStrMap) Get
|
|
Get returns the value by given key
.
Get 返回给定 key
的值。
(*IntStrMap) GetOrSet
|
|
GetOrSet returns the value by key, or sets value with given value
if it does not exist and then returns this value.
GetOrSet 按键返回值,如果值不存在,则使用 given value
设置值,然后返回此值。
(*IntStrMap) GetOrSetFunc
|
|
GetOrSetFunc returns the value by key, or sets value with returned value of callback function f
if it does not exist and returns this value.
GetOrSetFunc 按键返回值,或者使用回调函数 f
的返回值设置值(如果不存在)并返回此值。
(*IntStrMap) GetOrSetFuncLock
|
|
GetOrSetFuncLock returns the value by key, or sets value with returned value of callback function f
if it does not exist and returns this value.
GetOrSetFuncLock 按键返回值,或者使用回调函数 f
的返回值设置值(如果不存在)并返回此值。
GetOrSetFuncLock differs with GetOrSetFunc function is that it executes function f
with mutex.Lock of the hash map.
GetOrSetFuncLock 与 GetOrSetFunc 函数的不同之处在于它使用互斥锁执行函数 f
。哈希映射的锁定。
(*IntStrMap) IsEmpty
|
|
IsEmpty checks whether the map is empty. It returns true if map is empty, or else false.
IsEmpty 检查地图是否为空。如果 map 为空,则返回 true,否则返回 false。
(*IntStrMap) IsSubOf
|
|
IsSubOf checks whether the current map is a sub-map of other
.
IsSubOf 检查当前映射是否是 的 other
子映射。
(*IntStrMap) Iterator
|
|
Iterator iterates the hash map readonly with custom callback function f
. If f
returns true, then it continues iterating; or false to stop.
迭代器使用自定义回调函数 f
迭代哈希映射只读。如果 f
返回 true,则继续迭代;或 false 停止。
(*IntStrMap) Keys
|
|
Keys returns all keys of the map as a slice.
Keys 将地图的所有键作为切片返回。
(*IntStrMap) LockFunc
|
|
LockFunc locks writing with given callback function f
within RWMutex.Lock.
LockFunc 在 RWMutex.Lock 中使用给定的回调函数 f
锁定写入。
(*IntStrMap) Map
|
|
Map returns the underlying data map. Note that, if it’s in concurrent-safe usage, it returns a copy of underlying data, or else a pointer to the underlying data.
Map 返回基础数据映射。请注意,如果它处于并发安全使用状态,它将返回基础数据的副本,或者返回指向基础数据的指针。
(*IntStrMap) MapCopy
|
|
MapCopy returns a copy of the underlying data of the hash map.
MapCopy 返回哈希映射的基础数据的副本。
(*IntStrMap) MapStrAny
|
|
MapStrAny returns a copy of the underlying data of the map as map[string]interface{}.
MapStrAny 以 map[string]interface{} 的形式返回地图基础数据的副本。
(IntStrMap) MarshalJSON
|
|
MarshalJSON implements the interface MarshalJSON for json.Marshal.
MarshalJSON 实现 json 的接口 MarshalJSON。元帅。
(*IntStrMap) Merge
|
|
Merge merges two hash maps. The other
map will be merged into the map m
.
合并合并两个哈希映射。 other
地图将合并到地图 m
中。
(*IntStrMap) Pop
|
|
Pop retrieves and deletes an item from the map.
Pop 从地图中检索和删除项目。
(*IntStrMap) Pops
|
|
Pops retrieves and deletes size
items from the map. It returns all items if size == -1.
Pops 从地图中检索和删除 size
项目。如果大小 == -1,则返回所有项目。
(*IntStrMap) RLockFunc
|
|
RLockFunc locks reading with given callback function f
within RWMutex.RLock.
RLockFunc 在 RWMutex.RLock 中使用给定的回调函数 f
锁定读取。
(*IntStrMap) Remove
|
|
Remove deletes value from map by given key
, and return this deleted value.
按给定 key
从映射中删除删除值,并返回此删除值。
(*IntStrMap) Removes
|
|
Removes batch deletes values of the map by keys.
删除按键批量删除映射的值。
(*IntStrMap) Replace
|
|
Replace the data of the map with given data
.
将地图的数据替换为给定 data
的 .
(*IntStrMap) Search
|
|
Search searches the map with given key
. Second return parameter found
is true if key was found, otherwise false.
搜索 使用给定 key
的 .如果找到键,则第二个返回参数 found
为 true,否则为 false。
(*IntStrMap) Set
|
|
Set sets key-value to the hash map.
Set 将 key-value 设置为哈希映射。
(*IntStrMap) SetIfNotExist
|
|
SetIfNotExist sets value
to the map if the key
does not exist, and then returns true. It returns false if key
exists, and value
would be ignored.
如果 不存在 key
,则 SetIfNotExist 设置为 value
映射,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
(*IntStrMap) SetIfNotExistFunc
|
|
SetIfNotExistFunc sets value with return value of callback function f
, and then returns true. It returns false if key
exists, and value
would be ignored.
SetIfNotExistFunc 使用回调函数 f
的返回值设置值,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
(*IntStrMap) SetIfNotExistFuncLock
|
|
SetIfNotExistFuncLock sets value with return value of callback function f
, and then returns true. It returns false if key
exists, and value
would be ignored.
SetIfNotExistFuncLock 使用回调函数 f
的返回值设置值,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
SetIfNotExistFuncLock differs with SetIfNotExistFunc function is that it executes function f
with mutex.Lock of the hash map.
SetIfNotExistFuncLock 与 SetIfNotExistFunc 函数的不同之处在于它使用互斥锁执行函数 f
。哈希映射的锁定。
(*IntStrMap) Sets
|
|
Sets batch sets key-values to the hash map.
将批处理设置键值设置为哈希映射。
(*IntStrMap) Size
|
|
Size returns the size of the map.
Size 返回地图的大小。
(*IntStrMap) String
|
|
String returns the map as a string.
String 以字符串形式返回映射。
(*IntStrMap) UnmarshalJSON
|
|
UnmarshalJSON implements the interface UnmarshalJSON for json.Unmarshal.
UnmarshalJSON 实现 json 的接口 UnmarshalJSON。元帅。
(*IntStrMap) UnmarshalValue
|
|
UnmarshalValue is an interface implement which sets any type of value for map.
UnmarshalValue 是一个接口实现,用于为 map 设置任何类型的值。
(*IntStrMap) Values
|
|
Values returns all values of the map as a slice.
Values 以切片的形式返回地图的所有值。
type ListMap
|
|
ListMap is a map that preserves insertion-order.
ListMap 是保留插入顺序的映射。
It is backed by a hash table to store values and doubly-linked list to store ordering.
它由用于存储值的哈希表和用于存储排序的双向链表提供支持。
Structure is not thread safe.
结构不是线程安全的。
Reference: http://en.wikipedia.org/wiki/Associative_array
参考资料: http://en.wikipedia.org/wiki/Associative_array
func NewListMap
|
|
NewListMap returns an empty link map. ListMap is backed by a hash table to store values and doubly-linked list to store ordering. The parameter safe
is used to specify whether using map in concurrent-safety, which is false in default.
NewListMap 返回一个空的链接映射。ListMap 由用于存储值的哈希表和用于存储排序的双链列表提供支持。该参数 safe
用于指定是否在 concurrent-safety 中使用 map,默认为 false。
Example
|
|
func NewListMapFrom
|
|
NewListMapFrom returns a link map from given map data
. Note that, the param data
map will be set as the underlying data map(no deep copy), there might be some concurrent-safe issues when changing the map outside.
NewListMapFrom 从给定的 map data
返回链接映射。请注意,参数 data
映射将设置为底层数据映射(无深度拷贝),在外部更改映射时可能会出现一些并发安全问题。
Example
|
|
(*ListMap) Clear
|
|
Clear deletes all data of the map, it will remake a new underlying data map.
清除会删除地图的所有数据,它将重新制作一个新的基础数据地图。
Example
|
|
(*ListMap) Clone
|
|
Clone returns a new link map with copy of current map data.
克隆将返回包含当前地图数据副本的新链接地图。
Example
|
|
(*ListMap) Contains
|
|
Contains checks whether a key exists. It returns true if the key
exists, or else false.
包含检查密钥是否存在。如果存在, key
则返回 true,否则返回 false。
Example
|
|
(*ListMap) DeepCopy
|
|
DeepCopy implements interface for deep copy of current type.
DeepCopy实现了当前类型的深度拷贝接口。
(*ListMap) FilterEmpty
|
|
FilterEmpty deletes all key-value pair of which the value is empty.
FilterEmpty 删除所有值为空的键值对。
Example
|
|
(*ListMap) Flip
|
|
Flip exchanges key-value of the map to value-key.
Flip 将映射的键值交换为值键。
Example
|
|
(*ListMap) Get
|
|
Get returns the value by given key
.
Get 返回给定 key
的值。
Example
|
|
(*ListMap) GetOrSet
|
|
GetOrSet returns the value by key, or sets value with given value
if it does not exist and then returns this value.
GetOrSet 按键返回值,如果值不存在,则使用 given value
设置值,然后返回此值。
Example
|
|
(*ListMap) GetOrSetFunc
|
|
GetOrSetFunc returns the value by key, or sets value with returned value of callback function f
if it does not exist and then returns this value.
GetOrSetFunc 按键返回值,或者使用回调函数 f
的返回值设置值(如果不存在),然后返回此值。
Example
|
|
(*ListMap) GetOrSetFuncLock
|
|
GetOrSetFuncLock returns the value by key, or sets value with returned value of callback function f
if it does not exist and then returns this value.
GetOrSetFuncLock 按键返回值,或者使用回调函数 f
的返回值设置值(如果不存在),然后返回此值。
GetOrSetFuncLock differs with GetOrSetFunc function is that it executes function f
with mutex.Lock of the map.
GetOrSetFuncLock 与 GetOrSetFunc 函数的不同之处在于它使用互斥锁执行函数 f
。地图的锁定。
Example
|
|
(*ListMap) GetVar
|
|
GetVar returns a Var with the value by given key
. The returned Var is un-concurrent safe.
GetVar 返回一个 Var,其值为 给定 key
。返回的 Var 是非并发安全的。
Example
|
|
(*ListMap) GetVarOrSet
|
|
GetVarOrSet returns a Var with result from GetVarOrSet. The returned Var is un-concurrent safe.
GetVarOrSet 返回一个 Var,其中包含来自 GetVarOrSet 的结果。返回的 Var 是非并发安全的。
Example
|
|
(*ListMap) GetVarOrSetFunc
|
|
GetVarOrSetFunc returns a Var with result from GetOrSetFunc. The returned Var is un-concurrent safe.
GetVarOrSetFunc 返回一个 Var,其中包含来自 GetOrSetFunc 的结果。返回的 Var 是非并发安全的。
Example
|
|
(*ListMap) GetVarOrSetFuncLock
|
|
GetVarOrSetFuncLock returns a Var with result from GetOrSetFuncLock. The returned Var is un-concurrent safe.
GetVarOrSetFuncLock 返回一个 Var,其中包含来自 GetOrSetFuncLock 的结果。返回的 Var 是非并发安全的。
Example
|
|
(*ListMap) IsEmpty
|
|
IsEmpty checks whether the map is empty. It returns true if map is empty, or else false.
IsEmpty 检查地图是否为空。如果 map 为空,则返回 true,否则返回 false。
Example
|
|
(*ListMap) Iterator
|
|
Iterator is alias of IteratorAsc.
Iterator 是 IteratorAsc 的别名。
Example
|
|
(*ListMap) IteratorAsc
|
|
IteratorAsc iterates the map readonly in ascending order with given callback function f
. If f
returns true, then it continues iterating; or false to stop.
IteratorAsc 使用给定的回调函数 f
按升序迭代映射只读。如果 f
返回 true,则继续迭代;或 false 停止。
Example
|
|
(*ListMap) IteratorDesc
|
|
IteratorDesc iterates the map readonly in descending order with given callback function f
. If f
returns true, then it continues iterating; or false to stop.
IteratorDesc 使用给定的回调函数 f
按降序迭代映射只读。如果 f
返回 true,则继续迭代;或 false 停止。
Example
|
|
(*ListMap) Keys
|
|
Keys returns all keys of the map as a slice in ascending order.
Keys 按升序将地图的所有键作为切片返回。
Example
|
|
(*ListMap) Map
|
|
Map returns a copy of the underlying data of the map.
Map 返回地图基础数据的副本。
Example
|
|
(*ListMap) MapStrAny
|
|
MapStrAny returns a copy of the underlying data of the map as map[string]interface{}.
MapStrAny 以 map[string]interface{} 的形式返回地图基础数据的副本。
Example
|
|
(ListMap) MarshalJSON
|
|
MarshalJSON implements the interface MarshalJSON for json.Marshal.
MarshalJSON 实现 json 的接口 MarshalJSON。元帅。
Example
|
|
(*ListMap) Merge
|
|
Merge merges two link maps. The other
map will be merged into the map m
.
合并合并两个链接映射。 other
地图将合并到地图 m
中。
Example
|
|
(*ListMap) Pop
|
|
Pop retrieves and deletes an item from the map.
Pop 从地图中检索和删除项目。
Example
|
|
(*ListMap) Pops
|
|
Pops retrieves and deletes size
items from the map. It returns all items if size == -1.
Pops 从地图中检索和删除 size
项目。如果大小 == -1,则返回所有项目。
Example
|
|
(*ListMap) Remove
|
|
Remove deletes value from map by given key
, and return this deleted value.
按给定 key
从映射中删除删除值,并返回此删除值。
Example
|
|
(*ListMap) Removes
|
|
Removes batch deletes values of the map by keys.
删除按键批量删除映射的值。
Example
|
|
(*ListMap) Replace
|
|
Replace the data of the map with given data
.
将地图的数据替换为给定 data
的 .
Example
|
|
(*ListMap) Search
|
|
Search searches the map with given key
. Second return parameter found
is true if key was found, otherwise false.
搜索 使用给定 key
的 .如果找到键,则第二个返回参数 found
为 true,否则为 false。
Example
|
|
(*ListMap) Set
|
|
Set sets key-value to the map.
Set 将键值设置为映射。
Example
|
|
(*ListMap) SetIfNotExist
|
|
SetIfNotExist sets value
to the map if the key
does not exist, and then returns true. It returns false if key
exists, and value
would be ignored.
如果 不存在 key
,则 SetIfNotExist 设置为 value
映射,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
Example
|
|
(*ListMap) SetIfNotExistFunc
|
|
SetIfNotExistFunc sets value with return value of callback function f
, and then returns true. It returns false if key
exists, and value
would be ignored.
SetIfNotExistFunc 使用回调函数 f
的返回值设置值,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
Example
|
|
(*ListMap) SetIfNotExistFuncLock
|
|
SetIfNotExistFuncLock sets value with return value of callback function f
, and then returns true. It returns false if key
exists, and value
would be ignored.
SetIfNotExistFuncLock 使用回调函数 f
的返回值设置值,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
SetIfNotExistFuncLock differs with SetIfNotExistFunc function is that it executes function f
with mutex.Lock of the map.
SetIfNotExistFuncLock 与 SetIfNotExistFunc 函数的不同之处在于它使用互斥锁执行函数 f
。地图的锁定。
Example
|
|
(*ListMap) Sets
|
|
Sets batch sets key-values to the map.
将批处理设置键值设置为映射。
Example
|
|
(*ListMap) Size
|
|
Size returns the size of the map.
Size 返回地图的大小。
Example
|
|
(*ListMap) String
|
|
String returns the map as a string.
String 以字符串形式返回映射。
Example
|
|
(*ListMap) UnmarshalJSON
|
|
UnmarshalJSON implements the interface UnmarshalJSON for json.Unmarshal.
UnmarshalJSON 实现 json 的接口 UnmarshalJSON。元帅。
Example
|
|
(*ListMap) UnmarshalValue
|
|
UnmarshalValue is an interface implement which sets any type of value for map.
UnmarshalValue 是一个接口实现,用于为 map 设置任何类型的值。
Example
|
|
(*ListMap) Values
|
|
Values returns all values of the map as a slice.
Values 以切片的形式返回地图的所有值。
Example
|
|
type Map
|
|
func New
|
|
New creates and returns an empty hash map. The parameter safe
is used to specify whether using map in concurrent-safety, which is false in default.
New 创建并返回一个空的哈希映射。该参数 safe
用于指定是否在 concurrent-safety 中使用 map,默认为 false。
Example
|
|
func NewFrom
|
|
NewFrom creates and returns a hash map from given map data
. Note that, the param data
map will be set as the underlying data map(no deep copy), there might be some concurrent-safe issues when changing the map outside. The parameter safe
is used to specify whether using tree in concurrent-safety, which is false in default.
NewFrom 从给定的映射 data
创建并返回哈希映射。请注意,参数 data
映射将设置为底层数据映射(无深度拷贝),在外部更改映射时可能会出现一些并发安全问题。该参数 safe
用于指定是否在 concurrent-safety 中使用 tree,默认为 false。
Example
|
|
func NewHashMap
|
|
NewHashMap creates and returns an empty hash map. The parameter safe
is used to specify whether using map in concurrent-safety, which is false in default.
NewHashMap 创建并返回一个空的哈希映射。该参数 safe
用于指定是否在 concurrent-safety 中使用 map,默认为 false。
Example
|
|
func NewHashMapFrom
|
|
NewHashMapFrom creates and returns a hash map from given map data
. Note that, the param data
map will be set as the underlying data map(no deep copy), there might be some concurrent-safe issues when changing the map outside. The parameter safe
is used to specify whether using tree in concurrent-safety, which is false in default.
NewHashMapFrom 从给定的映射 data
创建并返回哈希映射。请注意,参数 data
映射将设置为底层数据映射(无深度拷贝),在外部更改映射时可能会出现一些并发安全问题。该参数 safe
用于指定是否在 concurrent-safety 中使用 tree,默认为 false。
Example
|
|
type StrAnyMap
|
|
StrAnyMap implements map[string]interface{} with RWMutex that has switch.
StrAnyMap 使用具有 switch 的 RWMutex 实现 map[string]interface{}。
func NewStrAnyMap
|
|
NewStrAnyMap returns an empty StrAnyMap object. The parameter safe
is used to specify whether using map in concurrent-safety, which is false in default.
NewStrAnyMap 返回一个空的 StrAnyMap 对象。该参数 safe
用于指定是否在 concurrent-safety 中使用 map,默认为 false。
Example
|
|
func NewStrAnyMapFrom
|
|
NewStrAnyMapFrom creates and returns a hash map from given map data
. Note that, the param data
map will be set as the underlying data map(no deep copy), there might be some concurrent-safe issues when changing the map outside.
NewStrAnyMapFrom 从给定的映射 data
创建并返回哈希映射。请注意,参数 data
映射将设置为底层数据映射(无深度拷贝),在外部更改映射时可能会出现一些并发安全问题。
Example
|
|
(*StrAnyMap) Clear
|
|
Clear deletes all data of the map, it will remake a new underlying data map.
清除会删除地图的所有数据,它将重新制作一个新的基础数据地图。
Example
|
|
(*StrAnyMap) Clone
|
|
Clone returns a new hash map with copy of current map data.
克隆将返回一个新的哈希映射,其中包含当前映射数据的副本。
Example
|
|
(*StrAnyMap) Contains
|
|
Contains checks whether a key exists. It returns true if the key
exists, or else false.
包含检查密钥是否存在。如果存在, key
则返回 true,否则返回 false。
Example
|
|
(*StrAnyMap) DeepCopy
|
|
DeepCopy implements interface for deep copy of current type.
DeepCopy实现了当前类型的深度拷贝接口。
(*StrAnyMap) Diff
|
|
Diff compares current map m
with map other
and returns their different keys. The returned addedKeys
are the keys that are in map m
but not in map other
. The returned removedKeys
are the keys that are in map other
but not in map m
. The returned updatedKeys
are the keys that are both in map m
and other
but their values and not equal (!=
).
Diff 将当前映射 m
与映射 other
进行比较,并返回它们的不同键。返回 addedKeys
的键在 map m
中但不在 map other
中。返回 removedKeys
的键在 map other
中但不在 map m
中。返回 updatedKeys
的键既在 map m
中, other
又在 但它们的值中且不相等 ( !=
)。
(*StrAnyMap) FilterEmpty
|
|
FilterEmpty deletes all key-value pair of which the value is empty. Values like: 0, nil, false, “”, len(slice/map/chan) == 0 are considered empty.
FilterEmpty 删除所有值为空的键值对。像 0, nil, false, “”, len(slice/map/chan) == 0 这样的值被视为空。
Example
|
|
(*StrAnyMap) FilterNil
|
|
FilterNil deletes all key-value pair of which the value is nil.
FilterNil 删除值为 nil 的所有键值对。
Example
|
|
(*StrAnyMap) Flip
|
|
Flip exchanges key-value of the map to value-key.
Flip 将映射的键值交换为值键。
Example
|
|
(*StrAnyMap) Get
|
|
Get returns the value by given key
.
Get 返回给定 key
的值。
Example
|
|
(*StrAnyMap) GetOrSet
|
|
GetOrSet returns the value by key, or sets value with given value
if it does not exist and then returns this value.
GetOrSet 按键返回值,如果值不存在,则使用 given value
设置值,然后返回此值。
Example
|
|
(*StrAnyMap) GetOrSetFunc
|
|
GetOrSetFunc returns the value by key, or sets value with returned value of callback function f
if it does not exist and then returns this value.
GetOrSetFunc 按键返回值,或者使用回调函数 f
的返回值设置值(如果不存在),然后返回此值。
Example
|
|
(*StrAnyMap) GetOrSetFuncLock
|
|
GetOrSetFuncLock returns the value by key, or sets value with returned value of callback function f
if it does not exist and then returns this value.
GetOrSetFuncLock 按键返回值,或者使用回调函数 f
的返回值设置值(如果不存在),然后返回此值。
GetOrSetFuncLock differs with GetOrSetFunc function is that it executes function f
with mutex.Lock of the hash map.
GetOrSetFuncLock 与 GetOrSetFunc 函数的不同之处在于它使用互斥锁执行函数 f
。哈希映射的锁定。
Example
|
|
(*StrAnyMap) GetVar
|
|
GetVar returns a Var with the value by given key
. The returned Var is un-concurrent safe.
GetVar 返回一个 Var,其值为 给定 key
。返回的 Var 是非并发安全的。
Example
|
|
(*StrAnyMap) GetVarOrSet
|
|
GetVarOrSet returns a Var with result from GetVarOrSet. The returned Var is un-concurrent safe.
GetVarOrSet 返回一个 Var,其中包含来自 GetVarOrSet 的结果。返回的 Var 是非并发安全的。
Example
|
|
(*StrAnyMap) GetVarOrSetFunc
|
|
GetVarOrSetFunc returns a Var with result from GetOrSetFunc. The returned Var is un-concurrent safe.
GetVarOrSetFunc 返回一个 Var,其中包含来自 GetOrSetFunc 的结果。返回的 Var 是非并发安全的。
Example
|
|
(*StrAnyMap) GetVarOrSetFuncLock
|
|
GetVarOrSetFuncLock returns a Var with result from GetOrSetFuncLock. The returned Var is un-concurrent safe.
GetVarOrSetFuncLock 返回一个 Var,其中包含来自 GetOrSetFuncLock 的结果。返回的 Var 是非并发安全的。
Example
|
|
(*StrAnyMap) IsEmpty
|
|
IsEmpty checks whether the map is empty. It returns true if map is empty, or else false.
IsEmpty 检查地图是否为空。如果 map 为空,则返回 true,否则返回 false。
Example
|
|
(*StrAnyMap) IsSubOf
|
|
IsSubOf checks whether the current map is a sub-map of other
.
IsSubOf 检查当前映射是否是 的 other
子映射。
(*StrAnyMap) Iterator
|
|
Iterator iterates the hash map readonly with custom callback function f
. If f
returns true, then it continues iterating; or false to stop.
迭代器使用自定义回调函数 f
迭代哈希映射只读。如果 f
返回 true,则继续迭代;或 false 停止。
Example
|
|
(*StrAnyMap) Keys
|
|
Keys returns all keys of the map as a slice.
Keys 将地图的所有键作为切片返回。
Example
|
|
(*StrAnyMap) LockFunc
|
|
LockFunc locks writing with given callback function f
within RWMutex.Lock.
LockFunc 在 RWMutex.Lock 中使用给定的回调函数 f
锁定写入。
Example
|
|
(*StrAnyMap) Map
|
|
Map returns the underlying data map. Note that, if it’s in concurrent-safe usage, it returns a copy of underlying data, or else a pointer to the underlying data.
Map 返回基础数据映射。请注意,如果它处于并发安全使用状态,它将返回基础数据的副本,或者返回指向基础数据的指针。
Example
|
|
(*StrAnyMap) MapCopy
|
|
MapCopy returns a copy of the underlying data of the hash map.
MapCopy 返回哈希映射的基础数据的副本。
Example
|
|
(*StrAnyMap) MapStrAny
|
|
MapStrAny returns a copy of the underlying data of the map as map[string]interface{}.
MapStrAny 以 map[string]interface{} 的形式返回地图基础数据的副本。
Example
|
|
(StrAnyMap) MarshalJSON
|
|
MarshalJSON implements the interface MarshalJSON for json.Marshal.
MarshalJSON 实现 json 的接口 MarshalJSON。元帅。
Example
|
|
(*StrAnyMap) Merge
|
|
Merge merges two hash maps. The other
map will be merged into the map m
.
合并合并两个哈希映射。 other
地图将合并到地图 m
中。
Example
|
|
(*StrAnyMap) Pop
|
|
Pop retrieves and deletes an item from the map.
Pop 从地图中检索和删除项目。
Example
|
|
(*StrAnyMap) Pops
|
|
Pops retrieves and deletes size
items from the map. It returns all items if size == -1.
Pops 从地图中检索和删除 size
项目。如果大小 == -1,则返回所有项目。
Example
|
|
(*StrAnyMap) RLockFunc
|
|
RLockFunc locks reading with given callback function f
within RWMutex.RLock.
RLockFunc 在 RWMutex.RLock 中使用给定的回调函数 f
锁定读取。
Example
|
|
(*StrAnyMap) Remove
|
|
Remove deletes value from map by given key
, and return this deleted value.
按给定 key
从映射中删除删除值,并返回此删除值。
Example
|
|
(*StrAnyMap) Removes
|
|
Removes batch deletes values of the map by keys.
删除按键批量删除映射的值。
Example
|
|
(*StrAnyMap) Replace
|
|
Replace the data of the map with given data
.
将地图的数据替换为给定 data
的 .
Example
|
|
(*StrAnyMap) Search
|
|
Search searches the map with given key
. Second return parameter found
is true if key was found, otherwise false.
搜索 使用给定 key
的 .如果找到键,则第二个返回参数 found
为 true,否则为 false。
Example
|
|
(*StrAnyMap) Set
|
|
Set sets key-value to the hash map.
Set 将 key-value 设置为哈希映射。
Example
|
|
(*StrAnyMap) SetIfNotExist
|
|
SetIfNotExist sets value
to the map if the key
does not exist, and then returns true. It returns false if key
exists, and value
would be ignored.
如果 不存在 key
,则 SetIfNotExist 设置为 value
映射,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
Example
|
|
(*StrAnyMap) SetIfNotExistFunc
|
|
SetIfNotExistFunc sets value with return value of callback function f
, and then returns true. It returns false if key
exists, and value
would be ignored.
SetIfNotExistFunc 使用回调函数 f
的返回值设置值,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
Example
|
|
(*StrAnyMap) SetIfNotExistFuncLock
|
|
SetIfNotExistFuncLock sets value with return value of callback function f
, and then returns true. It returns false if key
exists, and value
would be ignored.
SetIfNotExistFuncLock 使用回调函数 f
的返回值设置值,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
SetIfNotExistFuncLock differs with SetIfNotExistFunc function is that it executes function f
with mutex.Lock of the hash map.
SetIfNotExistFuncLock 与 SetIfNotExistFunc 函数的不同之处在于它使用互斥锁执行函数 f
。哈希映射的锁定。
Example
|
|
(*StrAnyMap) Sets
|
|
Sets batch sets key-values to the hash map.
将批处理设置键值设置为哈希映射。
Example
|
|
(*StrAnyMap) Size
|
|
Size returns the size of the map.
Size 返回地图的大小。
Example
|
|
(*StrAnyMap) String
|
|
String returns the map as a string.
String 以字符串形式返回映射。
Example
|
|
(*StrAnyMap) UnmarshalJSON
|
|
UnmarshalJSON implements the interface UnmarshalJSON for json.Unmarshal.
UnmarshalJSON 实现 json 的接口 UnmarshalJSON。元帅。
Example
|
|
(*StrAnyMap) UnmarshalValue
|
|
UnmarshalValue is an interface implement which sets any type of value for map.
UnmarshalValue 是一个接口实现,用于为 map 设置任何类型的值。
Example
|
|
(*StrAnyMap) Values
|
|
Values returns all values of the map as a slice.
Values 以切片的形式返回地图的所有值。
Example
|
|
type StrIntMap
|
|
StrIntMap implements map[string]int with RWMutex that has switch.
StrIntMap 使用具有 switch 的 RWMutex 实现 map[string]int。
func NewStrIntMap
|
|
NewStrIntMap returns an empty StrIntMap object. The parameter safe
is used to specify whether using map in concurrent-safety, which is false in default.
NewStrIntMap 返回一个空的 StrIntMap 对象。该参数 safe
用于指定是否在 concurrent-safety 中使用 map,默认为 false。
Example
|
|
func NewStrIntMapFrom
|
|
NewStrIntMapFrom creates and returns a hash map from given map data
. Note that, the param data
map will be set as the underlying data map(no deep copy), there might be some concurrent-safe issues when changing the map outside.
NewStrIntMapFrom 从给定的映射 data
创建并返回哈希映射。请注意,参数 data
映射将设置为底层数据映射(无深度拷贝),在外部更改映射时可能会出现一些并发安全问题。
Example
|
|
(*StrIntMap) Clear
|
|
Clear deletes all data of the map, it will remake a new underlying data map.
清除会删除地图的所有数据,它将重新制作一个新的基础数据地图。
Example
|
|
(*StrIntMap) Clone
|
|
Clone returns a new hash map with copy of current map data.
克隆将返回一个新的哈希映射,其中包含当前映射数据的副本。
Example
|
|
(*StrIntMap) Contains
|
|
Contains checks whether a key exists. It returns true if the key
exists, or else false.
包含检查密钥是否存在。如果存在, key
则返回 true,否则返回 false。
Example
|
|
(*StrIntMap) DeepCopy
|
|
DeepCopy implements interface for deep copy of current type.
DeepCopy实现了当前类型的深度拷贝接口。
(*StrIntMap) Diff
|
|
Diff compares current map m
with map other
and returns their different keys. The returned addedKeys
are the keys that are in map m
but not in map other
. The returned removedKeys
are the keys that are in map other
but not in map m
. The returned updatedKeys
are the keys that are both in map m
and other
but their values and not equal (!=
).
Diff 将当前映射 m
与映射 other
进行比较,并返回它们的不同键。返回 addedKeys
的键在 map m
中但不在 map other
中。返回 removedKeys
的键在 map other
中但不在 map m
中。返回 updatedKeys
的键既在 map m
中, other
又在 但它们的值中且不相等 ( !=
)。
(*StrIntMap) FilterEmpty
|
|
FilterEmpty deletes all key-value pair of which the value is empty. Values like: 0, nil, false, “”, len(slice/map/chan) == 0 are considered empty.
FilterEmpty 删除所有值为空的键值对。像 0, nil, false, “”, len(slice/map/chan) == 0 这样的值被视为空。
Example
|
|
(*StrIntMap) Flip
|
|
Flip exchanges key-value of the map to value-key.
Flip 将映射的键值交换为值键。
Example
|
|
(*StrIntMap) Get
|
|
Get returns the value by given key
.
Get 返回给定 key
的值。
Example
|
|
(*StrIntMap) GetOrSet
|
|
GetOrSet returns the value by key, or sets value with given value
if it does not exist and then returns this value.
GetOrSet 按键返回值,如果值不存在,则使用 given value
设置值,然后返回此值。
Example
|
|
(*StrIntMap) GetOrSetFunc
|
|
GetOrSetFunc returns the value by key, or sets value with returned value of callback function f
if it does not exist and then returns this value.
GetOrSetFunc 按键返回值,或者使用回调函数 f
的返回值设置值(如果不存在),然后返回此值。
Example
|
|
(*StrIntMap) GetOrSetFuncLock
|
|
GetOrSetFuncLock returns the value by key, or sets value with returned value of callback function f
if it does not exist and then returns this value.
GetOrSetFuncLock 按键返回值,或者使用回调函数 f
的返回值设置值(如果不存在),然后返回此值。
GetOrSetFuncLock differs with GetOrSetFunc function is that it executes function f
with mutex.Lock of the hash map.
GetOrSetFuncLock 与 GetOrSetFunc 函数的不同之处在于它使用互斥锁执行函数 f
。哈希映射的锁定。
Example
|
|
(*StrIntMap) IsEmpty
|
|
IsEmpty checks whether the map is empty. It returns true if map is empty, or else false.
IsEmpty 检查地图是否为空。如果 map 为空,则返回 true,否则返回 false。
Example
|
|
(*StrIntMap) IsSubOf
|
|
IsSubOf checks whether the current map is a sub-map of other
.
IsSubOf 检查当前映射是否是 的 other
子映射。
(*StrIntMap) Iterator
|
|
Iterator iterates the hash map readonly with custom callback function f
. If f
returns true, then it continues iterating; or false to stop.
迭代器使用自定义回调函数 f
迭代哈希映射只读。如果 f
返回 true,则继续迭代;或 false 停止。
Example
|
|
(*StrIntMap) Keys
|
|
Keys returns all keys of the map as a slice.
Keys 将地图的所有键作为切片返回。
Example
|
|
(*StrIntMap) LockFunc
|
|
LockFunc locks writing with given callback function f
within RWMutex.Lock.
LockFunc 在 RWMutex.Lock 中使用给定的回调函数 f
锁定写入。
Example
|
|
(*StrIntMap) Map
|
|
Map returns the underlying data map. Note that, if it’s in concurrent-safe usage, it returns a copy of underlying data, or else a pointer to the underlying data.
Map 返回基础数据映射。请注意,如果它处于并发安全使用状态,它将返回基础数据的副本,或者返回指向基础数据的指针。
Example
|
|
(*StrIntMap) MapCopy
|
|
MapCopy returns a copy of the underlying data of the hash map.
MapCopy 返回哈希映射的基础数据的副本。
Example
|
|
(*StrIntMap) MapStrAny
|
|
MapStrAny returns a copy of the underlying data of the map as map[string]interface{}.
MapStrAny 以 map[string]interface{} 的形式返回地图基础数据的副本。
Example
|
|
(StrIntMap) MarshalJSON
|
|
MarshalJSON implements the interface MarshalJSON for json.Marshal.
MarshalJSON 实现 json 的接口 MarshalJSON。元帅。
Example
|
|
(*StrIntMap) Merge
|
|
Merge merges two hash maps. The other
map will be merged into the map m
.
合并合并两个哈希映射。 other
地图将合并到地图 m
中。
Example
|
|
(*StrIntMap) Pop
|
|
Pop retrieves and deletes an item from the map.
Pop 从地图中检索和删除项目。
Example
|
|
(*StrIntMap) Pops
|
|
Pops retrieves and deletes size
items from the map. It returns all items if size == -1.
Pops 从地图中检索和删除 size
项目。如果大小 == -1,则返回所有项目。
Example
|
|
(*StrIntMap) RLockFunc
|
|
RLockFunc locks reading with given callback function f
within RWMutex.RLock.
RLockFunc 在 RWMutex.RLock 中使用给定的回调函数 f
锁定读取。
Example
|
|
(*StrIntMap) Remove
|
|
Remove deletes value from map by given key
, and return this deleted value.
按给定 key
从映射中删除删除值,并返回此删除值。
Example
|
|
(*StrIntMap) Removes
|
|
Removes batch deletes values of the map by keys.
删除按键批量删除映射的值。
Example
|
|
(*StrIntMap) Replace
|
|
Replace the data of the map with given data
.
将地图的数据替换为给定 data
的 .
Example
|
|
(*StrIntMap) Search
|
|
Search searches the map with given key
. Second return parameter found
is true if key was found, otherwise false.
搜索 使用给定 key
的 .如果找到键,则第二个返回参数 found
为 true,否则为 false。
Example
|
|
(*StrIntMap) Set
|
|
Set sets key-value to the hash map.
Set 将 key-value 设置为哈希映射。
Example
|
|
(*StrIntMap) SetIfNotExist
|
|
SetIfNotExist sets value
to the map if the key
does not exist, and then returns true. It returns false if key
exists, and value
would be ignored.
如果 不存在 key
,则 SetIfNotExist 设置为 value
映射,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
Example
|
|
(*StrIntMap) SetIfNotExistFunc
|
|
SetIfNotExistFunc sets value with return value of callback function f
, and then returns true. It returns false if key
exists, and value
would be ignored.
SetIfNotExistFunc 使用回调函数 f
的返回值设置值,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
Example
|
|
(*StrIntMap) SetIfNotExistFuncLock
|
|
SetIfNotExistFuncLock sets value with return value of callback function f
, and then returns true. It returns false if key
exists, and value
would be ignored.
SetIfNotExistFuncLock 使用回调函数 f
的返回值设置值,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
SetIfNotExistFuncLock differs with SetIfNotExistFunc function is that it executes function f
with mutex.Lock of the hash map.
SetIfNotExistFuncLock 与 SetIfNotExistFunc 函数的不同之处在于它使用互斥锁执行函数 f
。哈希映射的锁定。
Example
|
|
(*StrIntMap) Sets
|
|
Sets batch sets key-values to the hash map.
将批处理设置键值设置为哈希映射。
Example
|
|
(*StrIntMap) Size
|
|
Size returns the size of the map.
Size 返回地图的大小。
Example
|
|
(*StrIntMap) String
|
|
String returns the map as a string.
String 以字符串形式返回映射。
Example
|
|
(*StrIntMap) UnmarshalJSON
|
|
UnmarshalJSON implements the interface UnmarshalJSON for json.Unmarshal.
UnmarshalJSON 实现 json 的接口 UnmarshalJSON。元帅。
Example
|
|
(*StrIntMap) UnmarshalValue
|
|
UnmarshalValue is an interface implement which sets any type of value for map.
UnmarshalValue 是一个接口实现,用于为 map 设置任何类型的值。
Example
|
|
(*StrIntMap) Values
|
|
Values returns all values of the map as a slice.
Values 以切片的形式返回地图的所有值。
Example
|
|
type StrStrMap
|
|
StrStrMap implements map[string]string with RWMutex that has switch.
StrStrMap 使用具有 switch 的 RWMutex 实现 map[string]string。
func NewStrStrMap
|
|
NewStrStrMap returns an empty StrStrMap object. The parameter safe
is used to specify whether using map in concurrent-safety, which is false in default.
NewStrStrMap 返回一个空的 StrStrMap 对象。该参数 safe
用于指定是否在 concurrent-safety 中使用 map,默认为 false。
Example
|
|
func NewStrStrMapFrom
|
|
NewStrStrMapFrom creates and returns a hash map from given map data
. Note that, the param data
map will be set as the underlying data map(no deep copy), there might be some concurrent-safe issues when changing the map outside.
NewStrStrMapFrom 从给定的映射 data
创建并返回哈希映射。请注意,参数 data
映射将设置为底层数据映射(无深度拷贝),在外部更改映射时可能会出现一些并发安全问题。
Example
|
|
(*StrStrMap) Clear
|
|
Clear deletes all data of the map, it will remake a new underlying data map.
清除会删除地图的所有数据,它将重新制作一个新的基础数据地图。
Example
|
|
(*StrStrMap) Clone
|
|
Clone returns a new hash map with copy of current map data.
克隆将返回一个新的哈希映射,其中包含当前映射数据的副本。
Example
|
|
(*StrStrMap) Contains
|
|
Contains checks whether a key exists. It returns true if the key
exists, or else false.
包含检查密钥是否存在。如果存在, key
则返回 true,否则返回 false。
Example
|
|
(*StrStrMap) DeepCopy
|
|
DeepCopy implements interface for deep copy of current type.
DeepCopy实现了当前类型的深度拷贝接口。
(*StrStrMap) Diff
|
|
Diff compares current map m
with map other
and returns their different keys. The returned addedKeys
are the keys that are in map m
but not in map other
. The returned removedKeys
are the keys that are in map other
but not in map m
. The returned updatedKeys
are the keys that are both in map m
and other
but their values and not equal (!=
).
Diff 将当前映射 m
与映射 other
进行比较,并返回它们的不同键。返回 addedKeys
的键在 map m
中但不在 map other
中。返回 removedKeys
的键在 map other
中但不在 map m
中。返回 updatedKeys
的键既在 map m
中, other
又在 但它们的值中且不相等 ( !=
)。
(*StrStrMap) FilterEmpty
|
|
FilterEmpty deletes all key-value pair of which the value is empty. Values like: 0, nil, false, “”, len(slice/map/chan) == 0 are considered empty.
FilterEmpty 删除所有值为空的键值对。像 0, nil, false, “”, len(slice/map/chan) == 0 这样的值被视为空。
Example
|
|
(*StrStrMap) Flip
|
|
Flip exchanges key-value of the map to value-key.
Flip 将映射的键值交换为值键。
Example
|
|
(*StrStrMap) Get
|
|
Get returns the value by given key
.
Get 返回给定 key
的值。
Example
|
|
(*StrStrMap) GetOrSet
|
|
GetOrSet returns the value by key, or sets value with given value
if it does not exist and then returns this value.
GetOrSet 按键返回值,如果值不存在,则使用 given value
设置值,然后返回此值。
Example
|
|
(*StrStrMap) GetOrSetFunc
|
|
GetOrSetFunc returns the value by key, or sets value with returned value of callback function f
if it does not exist and then returns this value.
GetOrSetFunc 按键返回值,或者使用回调函数 f
的返回值设置值(如果不存在),然后返回此值。
Example
|
|
(*StrStrMap) GetOrSetFuncLock
|
|
GetOrSetFuncLock returns the value by key, or sets value with returned value of callback function f
if it does not exist and then returns this value.
GetOrSetFuncLock 按键返回值,或者使用回调函数 f
的返回值设置值(如果不存在),然后返回此值。
GetOrSetFuncLock differs with GetOrSetFunc function is that it executes function f
with mutex.Lock of the hash map.
GetOrSetFuncLock 与 GetOrSetFunc 函数的不同之处在于它使用互斥锁执行函数 f
。哈希映射的锁定。
Example
|
|
(*StrStrMap) IsEmpty
|
|
IsEmpty checks whether the map is empty. It returns true if map is empty, or else false.
IsEmpty 检查地图是否为空。如果 map 为空,则返回 true,否则返回 false。
Example
|
|
(*StrStrMap) IsSubOf
|
|
IsSubOf checks whether the current map is a sub-map of other
.
IsSubOf 检查当前映射是否是 的 other
子映射。
(*StrStrMap) Iterator
|
|
Iterator iterates the hash map readonly with custom callback function f
. If f
returns true, then it continues iterating; or false to stop.
迭代器使用自定义回调函数 f
迭代哈希映射只读。如果 f
返回 true,则继续迭代;或 false 停止。
Example
|
|
(*StrStrMap) Keys
|
|
Keys returns all keys of the map as a slice.
Keys 将地图的所有键作为切片返回。
Example
|
|
(*StrStrMap) LockFunc
|
|
LockFunc locks writing with given callback function f
within RWMutex.Lock.
LockFunc 在 RWMutex.Lock 中使用给定的回调函数 f
锁定写入。
Example
|
|
(*StrStrMap) Map
|
|
Map returns the underlying data map. Note that, if it’s in concurrent-safe usage, it returns a copy of underlying data, or else a pointer to the underlying data.
Map 返回基础数据映射。请注意,如果它处于并发安全使用状态,它将返回基础数据的副本,或者返回指向基础数据的指针。
Example
|
|
(*StrStrMap) MapCopy
|
|
MapCopy returns a copy of the underlying data of the hash map.
MapCopy 返回哈希映射的基础数据的副本。
Example
|
|
(*StrStrMap) MapStrAny
|
|
MapStrAny returns a copy of the underlying data of the map as map[string]interface{}.
MapStrAny 以 map[string]interface{} 的形式返回地图基础数据的副本。
Example
|
|
(StrStrMap) MarshalJSON
|
|
MarshalJSON implements the interface MarshalJSON for json.Marshal.
MarshalJSON 实现 json 的接口 MarshalJSON。元帅。
Example
|
|
(*StrStrMap) Merge
|
|
Merge merges two hash maps. The other
map will be merged into the map m
.
合并合并两个哈希映射。 other
地图将合并到地图 m
中。
Example
|
|
(*StrStrMap) Pop
|
|
Pop retrieves and deletes an item from the map.
Pop 从地图中检索和删除项目。
Example
|
|
(*StrStrMap) Pops
|
|
Pops retrieves and deletes size
items from the map. It returns all items if size == -1.
Pops 从地图中检索和删除 size
项目。如果大小 == -1,则返回所有项目。
Example
|
|
(*StrStrMap) RLockFunc
|
|
RLockFunc locks reading with given callback function f
within RWMutex.RLock.
RLockFunc 在 RWMutex.RLock 中使用给定的回调函数 f
锁定读取。
Example
|
|
(*StrStrMap) Remove
|
|
Remove deletes value from map by given key
, and return this deleted value.
按给定 key
从映射中删除删除值,并返回此删除值。
Example
|
|
(*StrStrMap) Removes
|
|
Removes batch deletes values of the map by keys.
删除按键批量删除映射的值。
Example
|
|
(*StrStrMap) Replace
|
|
Replace the data of the map with given data
.
将地图的数据替换为给定 data
的 .
Example
|
|
(*StrStrMap) Search
|
|
Search searches the map with given key
. Second return parameter found
is true if key was found, otherwise false.
搜索 使用给定 key
的 .如果找到键,则第二个返回参数 found
为 true,否则为 false。
Example
|
|
(*StrStrMap) Set
|
|
Set sets key-value to the hash map.
Set 将 key-value 设置为哈希映射。
Example
|
|
(*StrStrMap) SetIfNotExist
|
|
SetIfNotExist sets value
to the map if the key
does not exist, and then returns true. It returns false if key
exists, and value
would be ignored.
如果 不存在 key
,则 SetIfNotExist 设置为 value
映射,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
Example
|
|
(*StrStrMap) SetIfNotExistFunc
|
|
SetIfNotExistFunc sets value with return value of callback function f
, and then returns true. It returns false if key
exists, and value
would be ignored.
SetIfNotExistFunc 使用回调函数 f
的返回值设置值,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
Example
|
|
(*StrStrMap) SetIfNotExistFuncLock
|
|
SetIfNotExistFuncLock sets value with return value of callback function f
, and then returns true. It returns false if key
exists, and value
would be ignored.
SetIfNotExistFuncLock 使用回调函数 f
的返回值设置值,然后返回 true。如果 key
存在,则返回 false,并将 value
被忽略。
SetIfNotExistFuncLock differs with SetIfNotExistFunc function is that it executes function f
with mutex.Lock of the hash map.
SetIfNotExistFuncLock 与 SetIfNotExistFunc 函数的不同之处在于它使用互斥锁执行函数 f
。哈希映射的锁定。
Example
|
|
(*StrStrMap) Sets
|
|
Sets batch sets key-values to the hash map.
将批处理设置键值设置为哈希映射。
Example
|
|
(*StrStrMap) Size
|
|
Size returns the size of the map.
Size 返回地图的大小。
Example
|
|
(*StrStrMap) String
|
|
String returns the map as a string.
String 以字符串形式返回映射。
Example
|
|
(*StrStrMap) UnmarshalJSON
|
|
UnmarshalJSON implements the interface UnmarshalJSON for json.Unmarshal.
UnmarshalJSON 实现 json 的接口 UnmarshalJSON。元帅。
Example
|
|
(*StrStrMap) UnmarshalValue
|
|
UnmarshalValue is an interface implement which sets any type of value for map.
UnmarshalValue 是一个接口实现,用于为 map 设置任何类型的值。
Example
|
|
(*StrStrMap) Values
|
|
Values returns all values of the map as a slice.
Values 以切片的形式返回地图的所有值。
Example
|
|
type TreeMap
|
|
TreeMap based on red-black tree, alias of RedBlackTree.
基于红黑树的树状图,RedBlackTree的别名。
func NewTreeMap
|
|
NewTreeMap instantiates a tree map with the custom comparator. The parameter safe
is used to specify whether using tree in concurrent-safety, which is false in default.
NewTreeMap 使用自定义比较器实例化树状图。该参数 safe
用于指定是否在 concurrent-safety 中使用 tree,默认为 false。
Example
|
|
func NewTreeMapFrom
|
|
NewTreeMapFrom instantiates a tree map with the custom comparator and data
map. Note that, the param data
map will be set as the underlying data map(no deep copy), there might be some concurrent-safe issues when changing the map outside. The parameter safe
is used to specify whether using tree in concurrent-safety, which is false in default.
NewTreeMapFrom 使用自定义比较器和 data
映射实例化树状图。请注意,参数 data
映射将设置为底层数据映射(无深度拷贝),在外部更改映射时可能会出现一些并发安全问题。该参数 safe
用于指定是否在 concurrent-safety 中使用 tree,默认为 false。
Example
|
|