gf: github.com/johng-cn/gf/g/container/garray Index | Files

package garray

import "github.com/johng-cn/gf/g/container/garray"

Package garray provides kinds of concurrent-safe(alternative) arrays.

并发安全的数组.

Index

Package Files

garray.go garray_int.go garray_interface.go garray_sorted_int.go garray_sorted_interface.go garray_sorted_string.go garray_string.go

type Array Uses

type Array struct {
    // contains filtered or unexported fields
}

func New Uses

func New(size int, cap int, unsafe ...bool) *Array

func NewArray Uses

func NewArray(size int, cap int, unsafe ...bool) *Array

func (*Array) Append Uses

func (a *Array) Append(value ...interface{})

追加数据项

func (*Array) Clear Uses

func (a *Array) Clear()

清空数据数组

func (*Array) Get Uses

func (a *Array) Get(index int) interface{}

获取指定索引的数据项, 调用方注意判断数组边界

func (*Array) InsertAfter Uses

func (a *Array) InsertAfter(index int, value interface{})

在当前索引位置前插入一个数据项, 调用方注意判断数组边界

func (*Array) InsertBefore Uses

func (a *Array) InsertBefore(index int, value interface{})

在当前索引位置前插入一个数据项, 调用方注意判断数组边界

func (*Array) Len Uses

func (a *Array) Len() int

数组长度

func (*Array) LockFunc Uses

func (a *Array) LockFunc(f func(array []interface{}))

使用自定义方法执行加锁修改操作

func (*Array) PopLeft Uses

func (a *Array) PopLeft() interface{}

将最左端(索引为0)的数据项移出数组,并返回该数据项

func (*Array) PopRight Uses

func (a *Array) PopRight() interface{}

将最右端(索引为length - 1)的数据项移出数组,并返回该数据项

func (*Array) RLockFunc Uses

func (a *Array) RLockFunc(f func(array []interface{}))

使用自定义方法执行加锁读取操作

func (*Array) Remove Uses

func (a *Array) Remove(index int) interface{}

删除指定索引的数据项, 调用方注意判断数组边界

func (*Array) Search Uses

func (a *Array) Search(value interface{}) int

查找指定数值的索引位置,返回索引位置,如果查找不到则返回-1

func (*Array) Set Uses

func (a *Array) Set(index int, value interface{})

设置指定索引的数据项, 调用方注意判断数组边界

func (*Array) Slice Uses

func (a *Array) Slice() []interface{}

返回原始数据数组

func (*Array) Unique Uses

func (a *Array) Unique() *Array

清理数组中重复的元素项

type IntArray Uses

type IntArray struct {
    // contains filtered or unexported fields
}

func NewIntArray Uses

func NewIntArray(size int, cap int, unsafe ...bool) *IntArray

func (*IntArray) Append Uses

func (a *IntArray) Append(value ...int)

追加数据项

func (*IntArray) Clear Uses

func (a *IntArray) Clear()

清空数据数组

func (*IntArray) Get Uses

func (a *IntArray) Get(index int) int

获取指定索引的数据项, 调用方注意判断数组边界

func (*IntArray) InsertAfter Uses

func (a *IntArray) InsertAfter(index int, value int)

在当前索引位置后插入一个数据项, 调用方注意判断数组边界

func (*IntArray) InsertBefore Uses

func (a *IntArray) InsertBefore(index int, value int)

在当前索引位置前插入一个数据项, 调用方注意判断数组边界

func (*IntArray) Len Uses

func (a *IntArray) Len() int

数组长度

func (*IntArray) LockFunc Uses

func (a *IntArray) LockFunc(f func(array []int))

使用自定义方法执行加锁修改操作

func (*IntArray) RLockFunc Uses

func (a *IntArray) RLockFunc(f func(array []int))

使用自定义方法执行加锁读取操作

func (*IntArray) Remove Uses

func (a *IntArray) Remove(index int) int

删除指定索引的数据项, 调用方注意判断数组边界

func (*IntArray) Search Uses

func (a *IntArray) Search(value int) int

查找指定数值的索引位置,返回索引位置,如果查找不到则返回-1

func (*IntArray) Set Uses

func (a *IntArray) Set(index int, value int)

设置指定索引的数据项, 调用方注意判断数组边界

func (*IntArray) Slice Uses

func (a *IntArray) Slice() []int

返回原始数据数组

func (*IntArray) Unique Uses

func (a *IntArray) Unique() *IntArray

清理数组中重复的元素项

type SortedArray Uses

type SortedArray struct {
    // contains filtered or unexported fields
}

默认按照从低到高进行排序

func NewSortedArray Uses

func NewSortedArray(cap int, compareFunc func(v1, v2 interface{}) int, unsafe ...bool) *SortedArray

func (*SortedArray) Add Uses

func (a *SortedArray) Add(values ...interface{})

添加加数据项

func (*SortedArray) Clear Uses

func (a *SortedArray) Clear()

清空数据数组

func (*SortedArray) Get Uses

func (a *SortedArray) Get(index int) interface{}

获取指定索引的数据项, 调用方注意判断数组边界

func (*SortedArray) Len Uses

func (a *SortedArray) Len() int

数组长度

func (*SortedArray) LockFunc Uses

func (a *SortedArray) LockFunc(f func(array []interface{}))

使用自定义方法执行加锁修改操作

func (*SortedArray) PopLeft Uses

func (a *SortedArray) PopLeft() interface{}

将最左端(索引为0)的数据项移出数组,并返回该数据项

func (*SortedArray) PopRight Uses

func (a *SortedArray) PopRight() interface{}

将最右端(索引为length - 1)的数据项移出数组,并返回该数据项

func (*SortedArray) RLockFunc Uses

func (a *SortedArray) RLockFunc(f func(array []interface{}))

使用自定义方法执行加锁读取操作

func (*SortedArray) Remove Uses

func (a *SortedArray) Remove(index int) interface{}

删除指定索引的数据项, 调用方注意判断数组边界

func (*SortedArray) Search Uses

func (a *SortedArray) Search(value interface{}) (index int, result int)

查找指定数值的索引位置,返回索引位置(具体匹配位置或者最后对比位置)及查找结果 返回值: 最后比较位置, 比较结果

func (*SortedArray) SetUnique Uses

func (a *SortedArray) SetUnique(unique bool)

设置是否允许数组唯一

func (*SortedArray) Slice Uses

func (a *SortedArray) Slice() []interface{}

返回原始数据数组

type SortedIntArray Uses

type SortedIntArray struct {
    // contains filtered or unexported fields
}

默认按照从低到高进行排序

func NewSortedIntArray Uses

func NewSortedIntArray(cap int, unsafe ...bool) *SortedIntArray

创建一个排序的int数组

func (*SortedIntArray) Add Uses

func (a *SortedIntArray) Add(values ...int)

添加加数据项

func (*SortedIntArray) Clear Uses

func (a *SortedIntArray) Clear()

清空数据数组

func (*SortedIntArray) Get Uses

func (a *SortedIntArray) Get(index int) int

获取指定索引的数据项, 调用方注意判断数组边界

func (*SortedIntArray) Len Uses

func (a *SortedIntArray) Len() int

数组长度

func (*SortedIntArray) LockFunc Uses

func (a *SortedIntArray) LockFunc(f func(array []int))

使用自定义方法执行加锁修改操作

func (*SortedIntArray) PopLeft Uses

func (a *SortedIntArray) PopLeft() int

将最左端(索引为0)的数据项移出数组,并返回该数据项

func (*SortedIntArray) PopRight Uses

func (a *SortedIntArray) PopRight() int

将最右端(索引为length - 1)的数据项移出数组,并返回该数据项

func (*SortedIntArray) RLockFunc Uses

func (a *SortedIntArray) RLockFunc(f func(array []int))

使用自定义方法执行加锁读取操作

func (*SortedIntArray) Remove Uses

func (a *SortedIntArray) Remove(index int) int

删除指定索引的数据项, 调用方注意判断数组边界

func (*SortedIntArray) Search Uses

func (a *SortedIntArray) Search(value int) (index int, result int)

查找指定数值的索引位置,返回索引位置(具体匹配位置或者最后对比位置)及查找结果 返回值: 最后比较位置, 比较结果

func (*SortedIntArray) SetUnique Uses

func (a *SortedIntArray) SetUnique(unique bool)

设置是否允许数组唯一

func (*SortedIntArray) Slice Uses

func (a *SortedIntArray) Slice() []int

返回原始数据数组

type SortedStringArray Uses

type SortedStringArray struct {
    // contains filtered or unexported fields
}

默认按照从低到高进行排序

func NewSortedStringArray Uses

func NewSortedStringArray(cap int, unsafe ...bool) *SortedStringArray

func (*SortedStringArray) Add Uses

func (a *SortedStringArray) Add(values ...string)

添加加数据项

func (*SortedStringArray) Clear Uses

func (a *SortedStringArray) Clear()

清空数据数组

func (*SortedStringArray) Get Uses

func (a *SortedStringArray) Get(index int) string

获取指定索引的数据项, 调用方注意判断数组边界

func (*SortedStringArray) Len Uses

func (a *SortedStringArray) Len() int

数组长度

func (*SortedStringArray) LockFunc Uses

func (a *SortedStringArray) LockFunc(f func(array []string))

使用自定义方法执行加锁修改操作

func (*SortedStringArray) PopLeft Uses

func (a *SortedStringArray) PopLeft() string

将最左端(索引为0)的数据项移出数组,并返回该数据项

func (*SortedStringArray) PopRight Uses

func (a *SortedStringArray) PopRight() string

将最右端(索引为length - 1)的数据项移出数组,并返回该数据项

func (*SortedStringArray) RLockFunc Uses

func (a *SortedStringArray) RLockFunc(f func(array []string))

使用自定义方法执行加锁读取操作

func (*SortedStringArray) Remove Uses

func (a *SortedStringArray) Remove(index int) string

删除指定索引的数据项, 调用方注意判断数组边界

func (*SortedStringArray) Search Uses

func (a *SortedStringArray) Search(value string) (index int, result int)

查找指定数值的索引位置,返回索引位置(具体匹配位置或者最后对比位置)及查找结果 返回值: 最后比较位置, 比较结果

func (*SortedStringArray) SetUnique Uses

func (a *SortedStringArray) SetUnique(unique bool)

设置是否允许数组唯一

func (*SortedStringArray) Slice Uses

func (a *SortedStringArray) Slice() []string

返回原始数据数组

type StringArray Uses

type StringArray struct {
    // contains filtered or unexported fields
}

func NewStringArray Uses

func NewStringArray(size int, cap int, unsafe ...bool) *StringArray

func (*StringArray) Append Uses

func (a *StringArray) Append(value ...string)

追加数据项

func (*StringArray) Clear Uses

func (a *StringArray) Clear()

清空数据数组

func (*StringArray) Get Uses

func (a *StringArray) Get(index int) string

获取指定索引的数据项, 调用方注意判断数组边界

func (*StringArray) InsertAfter Uses

func (a *StringArray) InsertAfter(index int, value string)

在当前索引位置后插入一个数据项, 调用方注意判断数组边界

func (*StringArray) InsertBefore Uses

func (a *StringArray) InsertBefore(index int, value string)

在当前索引位置前插入一个数据项, 调用方注意判断数组边界

func (*StringArray) Len Uses

func (a *StringArray) Len() int

数组长度

func (*StringArray) LockFunc Uses

func (a *StringArray) LockFunc(f func(array []string))

使用自定义方法执行加锁修改操作

func (*StringArray) RLockFunc Uses

func (a *StringArray) RLockFunc(f func(array []string))

使用自定义方法执行加锁读取操作

func (*StringArray) Remove Uses

func (a *StringArray) Remove(index int) string

删除指定索引的数据项, 调用方注意判断数组边界

func (*StringArray) Search Uses

func (a *StringArray) Search(value string) int

查找指定数值的索引位置,返回索引位置,如果查找不到则返回-1

func (*StringArray) Set Uses

func (a *StringArray) Set(index int, value string)

设置指定索引的数据项, 调用方注意判断数组边界

func (*StringArray) Slice Uses

func (a *StringArray) Slice() []string

返回原始数据数组

func (*StringArray) Unique Uses

func (a *StringArray) Unique() *StringArray

清理数组中重复的元素项

Package garray imports 3 packages (graph). Updated 2019-01-22. Refresh now. Tools for package owners.