dict

package
v0.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 10, 2025 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AnyDict

type AnyDict[K comparable, V any] struct {
	// contains filtered or unexported fields
}

AnyDict 任意类型字典

func Cast

func Cast[K comparable, SRC, DST any](src *AnyDict[K, SRC], fn func(key K, value SRC) DST) *AnyDict[K, DST]

Cast 转换所有值并创建新AnyDict

func Make

func Make[K comparable, V any]() *AnyDict[K, V]

Make 创建空有序列表

func New

func New[K comparable, V any](m map[K]V) *AnyDict[K, V]

New 根据map创建无序map

func Zip

func Zip[K comparable, V any](keys []K, values []V) *AnyDict[K, V]

Zip 组合键值对为一个新的有序map

func (*AnyDict[K, V]) Clean

func (my *AnyDict[K, V]) Clean() *AnyDict[K, V]

Clean 清空

func (*AnyDict[K, V]) Copy

func (my *AnyDict[K, V]) Copy() *AnyDict[K, V]

Copy 复制一个新的map

func (*AnyDict[K, V]) Each

func (my *AnyDict[K, V]) Each(fn func(key K, value V)) *AnyDict[K, V]

Each 遍历所有元素

func (*AnyDict[K, V]) Every

func (my *AnyDict[K, V]) Every(fn func(key K, value V) (K, V)) *AnyDict[K, V]

Every 遍历所有元素并回填

func (*AnyDict[K, V]) Filter

func (my *AnyDict[K, V]) Filter(fn func(key K, value V) bool) *AnyDict[K, V]

Filter 通过键值对过滤

func (*AnyDict[K, V]) FirstKey

func (my *AnyDict[K, V]) FirstKey() K

FirstKey 获取第一个键

func (*AnyDict[K, V]) FirstValue

func (my *AnyDict[K, V]) FirstValue() V

FirstValue 获取第一个值

func (*AnyDict[K, V]) Get

func (my *AnyDict[K, V]) Get(key K) (V, bool)

Get 通过键获取值,同时获取exist

func (*AnyDict[K, V]) GetIndexByKey

func (my *AnyDict[K, V]) GetIndexByKey(key K) int

GetIndexByKey 通过键获取索引

func (*AnyDict[K, V]) GetIndexByValue

func (my *AnyDict[K, V]) GetIndexByValue(value V) int

GetIndexByValue 通过值获取索引

func (*AnyDict[K, V]) GetIndexes

func (my *AnyDict[K, V]) GetIndexes() *array.AnyArray[int]

GetIndexes 获取所有索引:*array.AnyArray[int]

func (*AnyDict[K, V]) GetIndexesByKeys

func (my *AnyDict[K, V]) GetIndexesByKeys(keys ...K) *array.AnyArray[int]

GetIndexesByKeys 通过键获取多个索引

func (*AnyDict[K, V]) GetIndexesByVals

func (my *AnyDict[K, V]) GetIndexesByVals(vals ...V) *array.AnyArray[int]

GetIndexesByVals 通过值获取多个索引

func (*AnyDict[K, V]) GetIndexesByValues

func (my *AnyDict[K, V]) GetIndexesByValues(values ...V) *array.AnyArray[int]

GetIndexesByValues 通过值获取多个索引

func (*AnyDict[K, V]) GetKeyByIndex

func (my *AnyDict[K, V]) GetKeyByIndex(idx int) K

GetKeyByIndex 通过索引获取键

func (*AnyDict[K, V]) GetKeyByValue

func (my *AnyDict[K, V]) GetKeyByValue(value V) K

GetKeyByValue 通过值获取键

func (*AnyDict[K, V]) GetKeys

func (my *AnyDict[K, V]) GetKeys() *array.AnyArray[K]

GetKeys 获取所有键:*array.AnyArray[K]

func (*AnyDict[K, V]) GetKeysByIndexes

func (my *AnyDict[K, V]) GetKeysByIndexes(indexes ...int) *array.AnyArray[K]

GetKeysByIndexes 通过索引获取多个键

func (*AnyDict[K, V]) GetKeysByValues

func (my *AnyDict[K, V]) GetKeysByValues(values ...V) *array.AnyArray[K]

GetKeysByValues 通过值获取多个键

func (*AnyDict[K, V]) GetValsByIndexes

func (my *AnyDict[K, V]) GetValsByIndexes(indexes ...int) *array.AnyArray[V]

GetValsByIndexes 通过索引获取多个值

func (*AnyDict[K, V]) GetValueByIndex

func (my *AnyDict[K, V]) GetValueByIndex(index int) V

GetValueByIndex 通过索引获取值

func (*AnyDict[K, V]) GetValueByKey

func (my *AnyDict[K, V]) GetValueByKey(key K) V

GetValueByKey 通过键获取值

func (*AnyDict[K, V]) GetValues

func (my *AnyDict[K, V]) GetValues() *array.AnyArray[V]

GetValues 获取所有值:*array.AnyArray[V]

func (*AnyDict[K, V]) GetValuesByIndexes

func (my *AnyDict[K, V]) GetValuesByIndexes(indexes ...int) *array.AnyArray[V]

GetValuesByIndexes 通过索引获取多个值

func (*AnyDict[K, V]) GetValuesByKeys

func (my *AnyDict[K, V]) GetValuesByKeys(keys ...K) *array.AnyArray[V]

GetValuesByKeys 通过值获取多个键

func (*AnyDict[K, V]) HasIndex

func (my *AnyDict[K, V]) HasIndex(index int) bool

HasIndex 检查索引是否存在

func (*AnyDict[K, V]) HasIndexes

func (my *AnyDict[K, V]) HasIndexes(indexes ...int) bool

HasIndexes 检查多个索引是否全部存在

func (*AnyDict[K, V]) HasKey

func (my *AnyDict[K, V]) HasKey(key K) bool

HasKey 检查键是否存在

func (*AnyDict[K, V]) HasKeys

func (my *AnyDict[K, V]) HasKeys(keys ...K) bool

HasKeys 检查多个键是否全部存在

func (*AnyDict[K, V]) HasValue

func (my *AnyDict[K, V]) HasValue(value V) bool

HasValue 检查值是否存在

func (*AnyDict[K, V]) HasValues

func (my *AnyDict[K, V]) HasValues(values ...V) bool

HasValues 检查多个值是否全部存在

func (*AnyDict[K, V]) InKeys

func (my *AnyDict[K, V]) InKeys(keys ...K) bool

InKeys 检查多个键是否存在

func (*AnyDict[K, V]) InValues

func (my *AnyDict[K, V]) InValues(values ...V) bool

InValues 检查多个值是否存在

func (*AnyDict[K, V]) IsEmpty

func (my *AnyDict[K, V]) IsEmpty() bool

IsEmpty 判断是否为空map

func (*AnyDict[K, V]) Join

func (my *AnyDict[K, V]) Join(seps ...string) string

Join 将所有值转为字符串并拼接

func (*AnyDict[K, V]) JoinWithoutEmpty

func (my *AnyDict[K, V]) JoinWithoutEmpty(seps ...string) string

JoinWithoutEmpty 将去掉0值后转为字符串并拼接

func (*AnyDict[K, V]) LastKey

func (my *AnyDict[K, V]) LastKey() K

LastKey 获取最后一个键

func (*AnyDict[K, V]) LastValue

func (my *AnyDict[K, V]) LastValue() V

LastValue 获取最后一个值

func (*AnyDict[K, V]) Len

func (my *AnyDict[K, V]) Len() int

Len 获取长度

func (*AnyDict[K, V]) LenWithoutEmpty

func (my *AnyDict[K, V]) LenWithoutEmpty() int

LenWithoutEmpty 判断非0值的长度

func (*AnyDict[K, V]) Lock

func (my *AnyDict[K, V]) Lock() *AnyDict[K, V]

Lock 加锁:写锁

func (*AnyDict[K, V]) MarshalJSON

func (my *AnyDict[K, V]) MarshalJSON() ([]byte, error)

MarshalJSON json接口实现:序列化

func (*AnyDict[K, V]) NotInKeys

func (my *AnyDict[K, V]) NotInKeys(keys ...K) bool

NotInKeys 检查多个键是否不存在

func (*AnyDict[K, V]) NotInValues

func (my *AnyDict[K, V]) NotInValues(values ...V) bool

NotInValues 检查多个值是否不存在

func (*AnyDict[K, V]) RLock

func (my *AnyDict[K, V]) RLock() *AnyDict[K, V]

RLock 加锁:读锁

func (*AnyDict[K, V]) RUnlock

func (my *AnyDict[K, V]) RUnlock() *AnyDict[K, V]

RUnlock 解锁:读锁

func (*AnyDict[K, V]) RemoveByKey

func (my *AnyDict[K, V]) RemoveByKey(key K) *AnyDict[K, V]

RemoveByKey 通过键移除元素

func (*AnyDict[K, V]) RemoveByValue

func (my *AnyDict[K, V]) RemoveByValue(value V) *AnyDict[K, V]

RemoveByValue 通过值移除元素

func (*AnyDict[K, V]) RemoveEmpty

func (my *AnyDict[K, V]) RemoveEmpty() *AnyDict[K, V]

RemoveEmpty 移除0值元素

func (*AnyDict[K, V]) Set

func (my *AnyDict[K, V]) Set(key K, value V) *AnyDict[K, V]

Set 设置键值对

func (*AnyDict[K, V]) ToMap

func (my *AnyDict[K, V]) ToMap() map[K]V

ToMap 获取一个普通map

func (*AnyDict[K, V]) ToOrderlyMap

func (my *AnyDict[K, V]) ToOrderlyMap() []AnyOrderlyItem[K, V]

ToOrderlyMap 导出一个可排序map

func (*AnyDict[K, V]) ToString

func (my *AnyDict[K, V]) ToString() string

ToString 获取字符串

func (*AnyDict[K, V]) Unlock

func (my *AnyDict[K, V]) Unlock() *AnyDict[K, V]

Unlock 解锁:写锁

func (*AnyDict[K, V]) UnmarshalJSON

func (my *AnyDict[K, V]) UnmarshalJSON(data []byte) error

UnmarshalJSON json接口实现:反序列化

type AnyOrderlyItem

type AnyOrderlyItem[K comparable, V any] struct {
	Key   K
	Value V
}

AnyOrderlyItem 可排序的任意类型字典

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL