garray
49 分钟阅读
原文:https://pkg.go.dev/github.com/gogf/gf/v2@v2.6.4/container/garray
Package garray provides most commonly used array containers which also support concurrent-safe/unsafe switch feature.
软件包 garray 提供最常用的阵列容器,这些容器还支持并发安全/不安全交换机功能。
常量
This section is empty.
变量
This section is empty.
函数
This section is empty.
类型
type Array
|
|
Array is a golang array with rich features. It contains a concurrent-safe/unsafe switch, which should be set when its initialization and cannot be changed then.
Array 是一个功能丰富的 golang 阵列。它包含一个并发安全/不安全开关,应在初始化时设置该开关,然后无法更改。
func New
|
|
New creates and returns an empty array. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
new 创建并返回一个空数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
Example New
|
|
func NewArray
|
|
NewArray is alias of New, please see New.
NewArray 是 New 的别名,请参阅 New。
func NewArrayFrom
|
|
NewArrayFrom creates and returns an array with given slice array
. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewArrayFrom 创建并返回一个具有给定切片 array
的数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
func NewArrayFromCopy
|
|
NewArrayFromCopy creates and returns an array from a copy of given slice array
. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewArrayFromCopy 从给定切片 array
的副本创建并返回一个数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
func NewArrayRange
|
|
NewArrayRange creates and returns an array by a range from start
to end
with step value step
.
NewArrayRange 创建并返回一个范围 start
为 end
to 的数组,其步骤值 step
为 。
func NewArraySize
|
|
NewArraySize create and returns an array with given size and cap. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewArraySize 创建并返回一个具有给定大小和上限的数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
func NewFrom
|
|
NewFrom is alias of NewArrayFrom. See NewArrayFrom.
NewFrom 是 NewArrayFrom 的别名。请参阅 NewArrayFrom。
func NewFromCopy
|
|
NewFromCopy is alias of NewArrayFromCopy. See NewArrayFromCopy.
NewFromCopy 是 NewArrayFromCopy 的别名。请参阅 NewArrayFromCopy。
(*Array) Append
|
|
Append is alias of PushRight, please See PushRight.
Append 是 PushRight 的别名,请参见 PushRight。
(*Array) At
|
|
At returns the value by the specified index. If the given index
is out of range of the array, it returns nil
.
at 返回指定索引的值。如果给定 index
的超出数组的范围,则返回 nil
。
(*Array) Chunk
|
|
Chunk splits an array into multiple arrays, the size of each array is determined by size
. The last chunk may contain less than size elements.
Chunk 将一个数组拆分为多个数组,每个数组的大小由 size
决定。最后一个块可能包含小于 size 的元素。
Example Chunk
|
|
(*Array) Clear
|
|
Clear deletes all items of current array.
清除将删除当前数组的所有项目。
(*Array) Clone
|
|
Clone returns a new array, which is a copy of current array.
克隆返回一个新数组,它是当前数组的副本。
(*Array) Contains
|
|
Contains checks whether a value exists in the array.
包含检查数组中是否存在值。
Example Contains
|
|
(*Array) CountValues
|
|
CountValues counts the number of occurrences of all values in the array.
CountValues 计算数组中所有值的出现次数。
(*Array) DeepCopy
|
|
DeepCopy implements interface for deep copy of current type.
DeepCopy实现了当前类型的深度拷贝接口。
(*Array) Fill
|
|
Fill fills an array with num entries of the value value
, keys starting at the startIndex
parameter.
Fill 使用值 value
的 num 个条目填充数组,键从 startIndex
参数开始。
(*Array) Filter
|
|
Filter iterates array and filters elements using custom callback function. It removes the element from array if callback function filter
returns true, it or else does nothing and continues iterating.
Filter 使用自定义回调函数迭代数组和筛选元素。如果回调函数 filter
返回 true,它会从数组中删除该元素,否则它不执行任何操作并继续迭代。
Example Filter
|
|
(*Array) FilterEmpty
|
|
FilterEmpty removes all empty value of the array. Values like: 0, nil, false, “”, len(slice/map/chan) == 0 are considered empty.
FilterEmpty 删除数组的所有空值。像 0, nil, false, “”, len(slice/map/chan) == 0 这样的值被视为空。
Example FilterEmpty
|
|
(*Array) FilterNil
|
|
FilterNil removes all nil value of the array.
FilterNil 删除数组的所有 nil 值。
Example FilterNil
|
|
(*Array) Get
|
|
Get returns the value by the specified index. If the given index
is out of range of the array, the found
is false.
Get 按指定索引返回值。如果给定 index
的超出数组的范围,则为 found
false。
(*Array) InsertAfter
|
|
InsertAfter inserts the values
to the back of index
.
InsertAfter 将 插入 values
到 index
的后面。
(*Array) InsertBefore
|
|
InsertBefore inserts the values
to the front of index
.
InsertBefore 将 插入 values
到 index
的前面。
(*Array) Interfaces
|
|
Interfaces returns current array as []interface{}.
Interfaces 以 []interface{} 的形式返回当前数组。
(*Array) IsEmpty
|
|
IsEmpty checks whether the array is empty.
IsEmpty 检查数组是否为空。
(*Array) Iterator
|
|
Iterator is alias of IteratorAsc.
Iterator 是 IteratorAsc 的别名。
Example Iterator
|
|
(*Array) IteratorAsc
|
|
IteratorAsc iterates the array 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 停止。
(*Array) IteratorDesc
|
|
IteratorDesc iterates the array 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 停止。
(*Array) Join
|
|
Join joins array elements with a string glue
.
Join 使用字符串 glue
连接数组元素。
Example Join
|
|
(*Array) Len
|
|
Len returns the length of array.
Len 返回数组的长度。
(*Array) LockFunc
|
|
LockFunc locks writing by callback function f
.
LockFunc 通过回调函数 f
锁定写入。
(Array) MarshalJSON
|
|
MarshalJSON implements the interface MarshalJSON for json.Marshal. Note that do not use pointer as its receiver here.
MarshalJSON 实现 json 的接口 MarshalJSON。元帅。请注意,此处不要使用指针作为其接收器。
(*Array) Merge
|
|
Merge merges array
into current array. The parameter array
can be any garray or slice type. The difference between Merge and Append is Append supports only specified slice type, but Merge supports more parameter types.
合并 array
合并到当前数组中。该参数 array
可以是任何 garray 或 slice 类型。Merge 和 Append 的区别在于 Append 仅支持指定的切片类型,但 Merge 支持更多参数类型。
Example Merge
|
|
(*Array) Pad
|
|
Pad pads array to the specified length with value
. If size is positive then the array is padded on the right, or negative on the left. If the absolute value of size
is less than or equal to the length of the array then no padding takes place.
焊盘垫数组设置为指定 value
长度。如果大小为正数,则数组在右侧填充,或在左侧填充为负数。如果 的 size
绝对值小于或等于数组的长度,则不会进行填充。
(*Array) PopLeft
|
|
PopLeft pops and returns an item from the beginning of array. Note that if the array is empty, the found
is false.
PopLeft 弹出并返回数组开头的项。请注意,如果数组为空,则为 found
false。
Example
|
|
(*Array) PopLefts
|
|
PopLefts pops and returns size
items from the beginning of array.
PopLefts 弹出并返回 size
数组开头的项。
Example
|
|
(*Array) PopRand
|
|
PopRand randomly pops and return an item out of array. Note that if the array is empty, the found
is false.
PopRand 随机弹出并返回数组外的项目。请注意,如果数组为空,则为 found
false。
Example
|
|
(*Array) PopRands
|
|
PopRands randomly pops and returns size
items out of array.
PopRands 随机弹出并返回 size
数组外的项目。
(*Array) PopRight
|
|
PopRight pops and returns an item from the end of array. Note that if the array is empty, the found
is false.
PopRight 弹出并返回数组末尾的项。请注意,如果数组为空,则为 found
false。
Example
|
|
(*Array) PopRights
|
|
PopRights pops and returns size
items from the end of array.
PopRights 弹出并返回 size
数组末尾的项。
Example
|
|
(*Array) PushLeft
|
|
PushLeft pushes one or multiple items to the beginning of array.
PushLeft 将一个或多个项推送到数组的开头。
(*Array) PushRight
|
|
PushRight pushes one or multiple items to the end of array. It equals to Append.
PushRight 将一个或多个项推送到数组的末尾。它等于追加。
(*Array) RLockFunc
|
|
RLockFunc locks reading by callback function f
.
RLockFunc 通过回调函数 f
锁定读取。
(*Array) Rand
|
|
Rand randomly returns one item from array(no deleting).
Rand 从数组中随机返回一个项目(不删除)。
(*Array) Rands
|
|
Rands randomly returns size
items from array(no deleting).
Rands 从数组中随机返回 size
项目(不删除)。
Example
|
|
(*Array) Range
|
|
Range picks and returns items by range, like array[start:end]. Notice, if in concurrent-safe usage, it returns a copy of slice; else a pointer to the underlying data.
范围按范围选取和返回项目,如 array[start:end]。请注意,如果在并发安全使用中,它会返回 slice 的副本;else 指向基础数据的指针。
If end
is negative, then the offset will start from the end of array. If end
is omitted, then the sequence will have everything from start up until the end of the array.
如果 end
为负数,则偏移量将从数组末尾开始。如果 end
省略,则序列将包含从数组开始到结束的所有内容。
(*Array) Remove
|
|
Remove removes an item by index. If the given index
is out of range of the array, the found
is false.
“删除”(Remove) 按索引删除项目。如果给定 index
的超出数组的范围,则为 found
false。
(*Array) RemoveValue
|
|
RemoveValue removes an item by value. It returns true if value is found in the array, or else false if not found.
RemoveValue 按值删除项目。如果在数组中找到值,则返回 true,如果未找到,则返回 false。
(*Array) RemoveValues
|
|
RemoveValues removes multiple items by values
.
RemoveValues 按 values
删除多个项目。
(*Array) Replace
|
|
Replace replaces the array items by given array
from the beginning of array.
Replace 将数组项替换为从数组开头开始给定 array
的数组项。
(*Array) Reverse
|
|
Reverse makes array with elements in reverse order.
Reverse 使数组具有相反顺序的元素。
Example
|
|
(*Array) Search
|
|
Search searches array by value
, returns the index of value
, or returns -1 if not exists.
搜索 搜索数 value
组 by 返回 的 value
索引,如果不存在,则返回 -1。
(*Array) Set
|
|
Set sets value to specified index.
将设置值设置为指定索引。
(*Array) SetArray
|
|
SetArray sets the underlying slice array with the given array
.
SetArray 使用给定 array
的 .
(*Array) Shuffle
|
|
Shuffle randomly shuffles the array.
随机洗牌数组。
Example
|
|
(*Array) Slice
|
|
Slice returns the underlying data of array. Note that, if it’s in concurrent-safe usage, it returns a copy of underlying data, or else a pointer to the underlying data.
Slice 返回数组的基础数据。请注意,如果它处于并发安全使用状态,它将返回基础数据的副本,或者返回指向基础数据的指针。
(*Array) SortFunc
|
|
SortFunc sorts the array by custom function less
.
SortFunc 按自定义函数 less
对数组进行排序。
(*Array) String
|
|
String returns current array as a string, which implements like json.Marshal does.
String 以字符串形式返回当前数组,其实现方式类似于 json。元帅做到了。
(*Array) SubSlice
|
|
SubSlice returns a slice of elements from the array as specified by the offset
and size
parameters. If in concurrent safe usage, it returns a copy of the slice; else a pointer.
SubSlice 从 offset
数组中返回由 and size
参数指定的元素切片。如果处于并发安全使用状态,则返回切片的副本;else 指针。
If offset is non-negative, the sequence will start at that offset in the array. If offset is negative, the sequence will start that far from the end of the array.
如果偏移量为非负数,则序列将从数组中的该偏移量开始。如果偏移量为负数,则序列将从数组末尾开始。
If length is given and is positive, then the sequence will have up to that many elements in it. If the array is shorter than the length, then only the available array elements will be present. If length is given and is negative then the sequence will stop that many elements from the end of the array. If it is omitted, then the sequence will have everything from offset up until the end of the array.
如果给定长度并且是正数,则序列中将包含多达那么多元素。如果数组短于长度,则仅存在可用的数组元素。如果给定长度并且是负数,则序列将从数组末尾停止该许多元素。如果省略它,则序列将包含从偏移量到数组末尾的所有内容。
Any possibility crossing the left border of array, it will fail.
任何越过数组左边界的可能性,都会失败。
(*Array) Sum
|
|
Sum returns the sum of values in an array.
Sum 返回数组中值的总和。
(*Array) Unique
|
|
Unique uniques the array, clear repeated items. Example: [1,1,2,3,2] -> [1,2,3]
唯一唯一数组,清除重复项。示例:[1,1,2,3,2] -> [1,2,3]
(*Array) UnmarshalJSON
|
|
UnmarshalJSON implements the interface UnmarshalJSON for json.Unmarshal.
UnmarshalJSON 实现 json 的接口 UnmarshalJSON。元帅。
(*Array) UnmarshalValue
|
|
UnmarshalValue is an interface implement which sets any type of value for array.
UnmarshalValue 是一个接口实现,用于为数组设置任何类型的值。
(*Array) Walk
|
|
Walk applies a user supplied function f
to every item of array.
Walk 将用户提供的函数 f
应用于数组的每个项。
type IntArray
|
|
IntArray is a golang int array with rich features. It contains a concurrent-safe/unsafe switch, which should be set when its initialization and cannot be changed then.
IntArray 是一个功能丰富的 golang int 数组。它包含一个并发安全/不安全开关,应在初始化时设置该开关,然后无法更改。
func NewIntArray
|
|
NewIntArray creates and returns an empty array. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewIntArray 创建并返回一个空数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
Example
|
|
func NewIntArrayFrom
|
|
NewIntArrayFrom creates and returns an array with given slice array
. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewIntArrayFrom 创建并返回一个具有给定切片 array
的数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
Example
|
|
func NewIntArrayFromCopy
|
|
NewIntArrayFromCopy creates and returns an array from a copy of given slice array
. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewIntArrayFromCopy 从给定切片 array
的副本创建并返回数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
Example
|
|
func NewIntArrayRange
|
|
NewIntArrayRange creates and returns an array by a range from start
to end
with step value step
.
NewIntArrayRange 创建并返回一个范围 start
为 end
to 的数组,其步骤值 step
为 。
Example
|
|
func NewIntArraySize
|
|
NewIntArraySize create and returns an array with given size and cap. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewIntArraySize 创建并返回具有给定大小和上限的数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
Example
|
|
(*IntArray) Append
|
|
Append is alias of PushRight,please See PushRight.
Append 是 PushRight 的别名,请参见 PushRight。
Example
|
|
(*IntArray) At
|
|
At returns the value by the specified index. If the given index
is out of range of the array, it returns 0
.
at 返回指定索引的值。如果给定 index
的超出数组的范围,则返回 0
。
Example
|
|
(*IntArray) Chunk
|
|
Chunk splits an array into multiple arrays, the size of each array is determined by size
. The last chunk may contain less than size elements.
Chunk 将一个数组拆分为多个数组,每个数组的大小由 size
决定。最后一个块可能包含小于 size 的元素。
Example
|
|
(*IntArray) Clear
|
|
Clear deletes all items of current array.
清除将删除当前数组的所有项目。
Example
|
|
(*IntArray) Clone
|
|
Clone returns a new array, which is a copy of current array.
克隆返回一个新数组,它是当前数组的副本。
Example
|
|
(*IntArray) Contains
|
|
Contains checks whether a value exists in the array.
包含检查数组中是否存在值。
Example
|
|
(*IntArray) CountValues
|
|
CountValues counts the number of occurrences of all values in the array.
CountValues 计算数组中所有值的出现次数。
Example
|
|
(*IntArray) DeepCopy
|
|
DeepCopy implements interface for deep copy of current type.
DeepCopy实现了当前类型的深度拷贝接口。
(*IntArray) Fill
|
|
Fill fills an array with num entries of the value value
, keys starting at the startIndex
parameter.
Fill 使用值 value
的 num 个条目填充数组,键从 startIndex
参数开始。
Example
|
|
(*IntArray) Filter
|
|
Filter iterates array and filters elements using custom callback function. It removes the element from array if callback function filter
returns true, it or else does nothing and continues iterating.
Filter 使用自定义回调函数迭代数组和筛选元素。如果回调函数 filter
返回 true,它会从数组中删除该元素,否则它不执行任何操作并继续迭代。
Example
|
|
(*IntArray) FilterEmpty
|
|
FilterEmpty removes all zero value of the array.
FilterEmpty 删除数组的所有零值。
Example
|
|
(*IntArray) Get
|
|
Get returns the value by the specified index. If the given index
is out of range of the array, the found
is false.
Get 按指定索引返回值。如果给定 index
的超出数组的范围,则为 found
false。
Example
|
|
(*IntArray) InsertAfter
|
|
InsertAfter inserts the value
to the back of index
.
InsertAfter 将 插入 value
到 index
的后面。
Example
|
|
(*IntArray) InsertBefore
|
|
InsertBefore inserts the values
to the front of index
.
InsertBefore 将 插入 values
到 index
的前面。
Example
|
|
(*IntArray) Interfaces
|
|
Interfaces returns current array as []interface{}.
Interfaces 以 []interface{} 的形式返回当前数组。
Example
|
|
(*IntArray) IsEmpty
|
|
IsEmpty checks whether the array is empty.
IsEmpty 检查数组是否为空。
Example
|
|
(*IntArray) Iterator
|
|
Iterator is alias of IteratorAsc.
Iterator 是 IteratorAsc 的别名。
Example
|
|
(*IntArray) IteratorAsc
|
|
IteratorAsc iterates the array 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
|
|
(*IntArray) IteratorDesc
|
|
IteratorDesc iterates the array 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
|
|
(*IntArray) Join
|
|
Join joins array elements with a string glue
.
Join 使用字符串 glue
连接数组元素。
Example
|
|
(*IntArray) Len
|
|
Len returns the length of array.
Len 返回数组的长度。
Example
|
|
(*IntArray) LockFunc
|
|
LockFunc locks writing by callback function f
.
LockFunc 通过回调函数 f
锁定写入。
Example
|
|
(IntArray) MarshalJSON
|
|
MarshalJSON implements the interface MarshalJSON for json.Marshal. Note that do not use pointer as its receiver here.
MarshalJSON 实现 json 的接口 MarshalJSON。元帅。请注意,此处不要使用指针作为其接收器。
Example
|
|
(*IntArray) Merge
|
|
Merge merges array
into current array. The parameter array
can be any garray or slice type. The difference between Merge and Append is Append supports only specified slice type, but Merge supports more parameter types.
合并 array
合并到当前数组中。该参数 array
可以是任何 garray 或 slice 类型。Merge 和 Append 的区别在于 Append 仅支持指定的切片类型,但 Merge 支持更多参数类型。
Example
|
|
(*IntArray) Pad
|
|
Pad pads array to the specified length with value
. If size is positive then the array is padded on the right, or negative on the left. If the absolute value of size
is less than or equal to the length of the array then no padding takes place.
焊盘垫数组设置为指定 value
长度。如果大小为正数,则数组在右侧填充,或在左侧填充为负数。如果 的 size
绝对值小于或等于数组的长度,则不会进行填充。
Example
|
|
(*IntArray) PopLeft
|
|
PopLeft pops and returns an item from the beginning of array. Note that if the array is empty, the found
is false.
PopLeft 弹出并返回数组开头的项。请注意,如果数组为空,则为 found
false。
Example
|
|
(*IntArray) PopLefts
|
|
PopLefts pops and returns size
items from the beginning of array. If the given size
is greater than size of the array, it returns all elements of the array. Note that if given size
<= 0 or the array is empty, it returns nil.
PopLefts 弹出并返回 size
数组开头的项。如果给定 size
的大小大于数组的大小,则返回数组的所有元素。请注意,如果给定 size
<= 0 或数组为空,则返回 nil。
Example
|
|
(*IntArray) PopRand
|
|
PopRand randomly pops and return an item out of array. Note that if the array is empty, the found
is false.
PopRand 随机弹出并返回数组外的项目。请注意,如果数组为空,则为 found
false。
Example
|
|
(*IntArray) PopRands
|
|
PopRands randomly pops and returns size
items out of array. If the given size
is greater than size of the array, it returns all elements of the array. Note that if given size
<= 0 or the array is empty, it returns nil.
PopRands 随机弹出并返回 size
数组外的项目。如果给定 size
的大小大于数组的大小,则返回数组的所有元素。请注意,如果给定 size
<= 0 或数组为空,则返回 nil。
Example
|
|
(*IntArray) PopRight
|
|
PopRight pops and returns an item from the end of array. Note that if the array is empty, the found
is false.
PopRight 弹出并返回数组末尾的项。请注意,如果数组为空,则为 found
false。
Example
|
|
(*IntArray) PopRights
|
|
PopRights pops and returns size
items from the end of array. If the given size
is greater than size of the array, it returns all elements of the array. Note that if given size
<= 0 or the array is empty, it returns nil.
PopRights 弹出并返回 size
数组末尾的项。如果给定 size
的大小大于数组的大小,则返回数组的所有元素。请注意,如果给定 size
<= 0 或数组为空,则返回 nil。
Example
|
|
(*IntArray) PushLeft
|
|
PushLeft pushes one or multiple items to the beginning of array.
PushLeft 将一个或多个项推送到数组的开头。
Example
|
|
(*IntArray) PushRight
|
|
PushRight pushes one or multiple items to the end of array. It equals to Append.
PushRight 将一个或多个项推送到数组的末尾。它等于追加。
Example
|
|
(*IntArray) RLockFunc
|
|
RLockFunc locks reading by callback function f
.
RLockFunc 通过回调函数 f
锁定读取。
Example
|
|
(*IntArray) Rand
|
|
Rand randomly returns one item from array(no deleting).
Rand 从数组中随机返回一个项目(不删除)。
Example
|
|
(*IntArray) Rands
|
|
Rands randomly returns size
items from array(no deleting).
Rands 从数组中随机返回 size
项目(不删除)。
Example
|
|
(*IntArray) Range
|
|
Range picks and returns items by range, like array[start:end]. Notice, if in concurrent-safe usage, it returns a copy of slice; else a pointer to the underlying data.
范围按范围选取和返回项目,如 array[start:end]。请注意,如果在并发安全使用中,它会返回 slice 的副本;else 指向基础数据的指针。
If end
is negative, then the offset will start from the end of array. If end
is omitted, then the sequence will have everything from start up until the end of the array.
如果 end
为负数,则偏移量将从数组末尾开始。如果 end
省略,则序列将包含从数组开始到结束的所有内容。
Example
|
|
(*IntArray) Remove
|
|
Remove removes an item by index. If the given index
is out of range of the array, the found
is false.
“删除”(Remove) 按索引删除项目。如果给定 index
的超出数组的范围,则为 found
false。
Example
|
|
(*IntArray) RemoveValue
|
|
RemoveValue removes an item by value. It returns true if value is found in the array, or else false if not found.
RemoveValue 按值删除项目。如果在数组中找到值,则返回 true,如果未找到,则返回 false。
Example
|
|
(*IntArray) RemoveValues
|
|
RemoveValues removes multiple items by values
.
RemoveValues 按 values
删除多个项目。
(*IntArray) Replace
|
|
Replace replaces the array items by given array
from the beginning of array.
Replace 将数组项替换为从数组开头开始给定 array
的数组项。
Example
|
|
(*IntArray) Reverse
|
|
Reverse makes array with elements in reverse order.
Reverse 使数组具有相反顺序的元素。
Example
|
|
(*IntArray) Search
|
|
Search searches array by value
, returns the index of value
, or returns -1 if not exists.
搜索 搜索数 value
组 by 返回 的 value
索引,如果不存在,则返回 -1。
Example
|
|
(*IntArray) Set
|
|
Set sets value to specified index.
将设置值设置为指定索引。
Example
|
|
(*IntArray) SetArray
|
|
SetArray sets the underlying slice array with the given array
.
SetArray 使用给定 array
的 .
Example
|
|
(*IntArray) Shuffle
|
|
Shuffle randomly shuffles the array.
随机洗牌数组。
Example
|
|
(*IntArray) Slice
|
|
Slice returns the underlying data of array. Note that, if it’s in concurrent-safe usage, it returns a copy of underlying data, or else a pointer to the underlying data.
Slice 返回数组的基础数据。请注意,如果它处于并发安全使用状态,它将返回基础数据的副本,或者返回指向基础数据的指针。
Example
|
|
(*IntArray) Sort
|
|
Sort sorts the array in increasing order. The parameter reverse
controls whether sort in increasing order(default) or decreasing order.
排序按升序对数组进行排序。该参数 reverse
控制是按递增顺序(默认)排序还是按递减顺序排序。
Example
|
|
(*IntArray) SortFunc
|
|
SortFunc sorts the array by custom function less
.
SortFunc 按自定义函数 less
对数组进行排序。
Example
|
|
(*IntArray) String
|
|
String returns current array as a string, which implements like json.Marshal does.
String 以字符串形式返回当前数组,其实现方式类似于 json。元帅做到了。
Example
|
|
(*IntArray) SubSlice
|
|
SubSlice returns a slice of elements from the array as specified by the offset
and size
parameters. If in concurrent safe usage, it returns a copy of the slice; else a pointer.
SubSlice 从 offset
数组中返回由 and size
参数指定的元素切片。如果处于并发安全使用状态,则返回切片的副本;else 指针。
If offset is non-negative, the sequence will start at that offset in the array. If offset is negative, the sequence will start that far from the end of the array.
如果偏移量为非负数,则序列将从数组中的该偏移量开始。如果偏移量为负数,则序列将从数组末尾开始。
If length is given and is positive, then the sequence will have up to that many elements in it. If the array is shorter than the length, then only the available array elements will be present. If length is given and is negative then the sequence will stop that many elements from the end of the array. If it is omitted, then the sequence will have everything from offset up until the end of the array.
如果给定长度并且是正数,则序列中将包含多达那么多元素。如果数组短于长度,则仅存在可用的数组元素。如果给定长度并且是负数,则序列将从数组末尾停止该许多元素。如果省略它,则序列将包含从偏移量到数组末尾的所有内容。
Any possibility crossing the left border of array, it will fail.
任何越过数组左边界的可能性,都会失败。
Example
|
|
(*IntArray) Sum
|
|
Sum returns the sum of values in an array.
Sum 返回数组中值的总和。
Example
|
|
(*IntArray) Unique
|
|
Unique uniques the array, clear repeated items. Example: [1,1,2,3,2] -> [1,2,3]
唯一唯一数组,清除重复项。示例:[1,1,2,3,2] -> [1,2,3]
Example
|
|
(*IntArray) UnmarshalJSON
|
|
UnmarshalJSON implements the interface UnmarshalJSON for json.Unmarshal.
UnmarshalJSON 实现 json 的接口 UnmarshalJSON。元帅。
Example
|
|
(*IntArray) UnmarshalValue
|
|
UnmarshalValue is an interface implement which sets any type of value for array.
UnmarshalValue 是一个接口实现,用于为数组设置任何类型的值。
Example
|
|
(*IntArray) Walk
|
|
Walk applies a user supplied function f
to every item of array.
Walk 将用户提供的函数 f
应用于数组的每个项。
Example
|
|
type SortedArray
|
|
SortedArray is a golang sorted array with rich features. It is using increasing order in default, which can be changed by setting it a custom comparator. It contains a concurrent-safe/unsafe switch, which should be set when its initialization and cannot be changed then.
SortedArray 是一个功能丰富的 golang 排序数组。默认情况下,它使用递增顺序,可以通过将其设置为自定义比较器来更改。它包含一个并发安全/不安全开关,应在初始化时设置该开关,然后无法更改。
func NewSortedArray
|
|
NewSortedArray creates and returns an empty sorted array. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default. The parameter comparator
used to compare values to sort in array, if it returns value < 0, means a
< b
; the a
will be inserted before b
; if it returns value = 0, means a
= b
; the a
will be replaced by b
; if it returns value > 0, means a
> b
; the a
will be inserted after b
;
NewSortedArray 创建并返回一个空的排序数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。 comparator
用于比较值以在数组中排序的参数,如果它返回值 < 0,则表示 a
< b
;将 a
插入之前 b
;如果它返回值 = 0,则意味着 a
= b
;将 a
替换为 b
;如果它返回值 > 0,则表示 a
> b
;将 a
插入后 b
;
func NewSortedArrayFrom
|
|
NewSortedArrayFrom creates and returns an sorted array with given slice array
. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewSortedArrayFrom 创建并返回具有给定切片 array
的排序数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
func NewSortedArrayFromCopy
|
|
NewSortedArrayFromCopy creates and returns an sorted array from a copy of given slice array
. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewSortedArrayFromCopy 从给定切片 array
的副本创建并返回一个排序数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
func NewSortedArrayRange
|
|
NewSortedArrayRange creates and returns an array by a range from start
to end
with step value step
.
NewSortedArrayRange 创建并返回一个数组,其范围为 从 start
到 end
的步长值 step
。
func NewSortedArraySize
|
|
NewSortedArraySize create and returns an sorted array with given size and cap. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewSortedArraySize 创建并返回具有给定大小和上限的排序数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
(*SortedArray) Add
|
|
Add adds one or multiple values to sorted array, the array always keeps sorted. It’s alias of function Append, see Append.
Add 将一个或多个值添加到排序数组中,该数组始终保持排序状态。它是函数 Append 的别名,请参阅 Append。
(*SortedArray) Append
|
|
Append adds one or multiple values to sorted array, the array always keeps sorted.
Append 将一个或多个值添加到排序数组,该数组始终保持排序状态。
(*SortedArray) At
|
|
At returns the value by the specified index. If the given index
is out of range of the array, it returns nil
.
at 返回指定索引的值。如果给定 index
的超出数组的范围,则返回 nil
。
(*SortedArray) Chunk
|
|
Chunk splits an array into multiple arrays, the size of each array is determined by size
. The last chunk may contain less than size elements.
Chunk 将一个数组拆分为多个数组,每个数组的大小由 size
决定。最后一个块可能包含小于 size 的元素。
(*SortedArray) Clear
|
|
Clear deletes all items of current array.
清除将删除当前数组的所有项目。
(*SortedArray) Clone
|
|
Clone returns a new array, which is a copy of current array.
克隆返回一个新数组,它是当前数组的副本。
(*SortedArray) Contains
|
|
Contains checks whether a value exists in the array.
包含检查数组中是否存在值。
(*SortedArray) CountValues
|
|
CountValues counts the number of occurrences of all values in the array.
CountValues 计算数组中所有值的出现次数。
(*SortedArray) DeepCopy
|
|
DeepCopy implements interface for deep copy of current type.
DeepCopy实现了当前类型的深度拷贝接口。
(*SortedArray) Filter
|
|
Filter iterates array and filters elements using custom callback function. It removes the element from array if callback function filter
returns true, it or else does nothing and continues iterating.
Filter 使用自定义回调函数迭代数组和筛选元素。如果回调函数 filter
返回 true,它会从数组中删除该元素,否则它不执行任何操作并继续迭代。
(*SortedArray) FilterEmpty
|
|
FilterEmpty removes all empty value of the array. Values like: 0, nil, false, “”, len(slice/map/chan) == 0 are considered empty.
FilterEmpty 删除数组的所有空值。像 0, nil, false, “”, len(slice/map/chan) == 0 这样的值被视为空。
(*SortedArray) FilterNil
|
|
FilterNil removes all nil value of the array.
FilterNil 删除数组的所有 nil 值。
(*SortedArray) Get
|
|
Get returns the value by the specified index. If the given index
is out of range of the array, the found
is false.
Get 按指定索引返回值。如果给定 index
的超出数组的范围,则为 found
false。
(*SortedArray) Interfaces
|
|
Interfaces returns current array as []interface{}.
Interfaces 以 []interface{} 的形式返回当前数组。
(*SortedArray) IsEmpty
|
|
IsEmpty checks whether the array is empty.
IsEmpty 检查数组是否为空。
(*SortedArray) Iterator
|
|
Iterator is alias of IteratorAsc.
Iterator 是 IteratorAsc 的别名。
(*SortedArray) IteratorAsc
|
|
IteratorAsc iterates the array 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 停止。
(*SortedArray) IteratorDesc
|
|
IteratorDesc iterates the array 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 停止。
(*SortedArray) Join
|
|
Join joins array elements with a string glue
.
Join 使用字符串 glue
连接数组元素。
(*SortedArray) Len
|
|
Len returns the length of array.
Len 返回数组的长度。
(*SortedArray) LockFunc
|
|
LockFunc locks writing by callback function f
.
LockFunc 通过回调函数 f
锁定写入。
(SortedArray) MarshalJSON
|
|
MarshalJSON implements the interface MarshalJSON for json.Marshal. Note that do not use pointer as its receiver here.
MarshalJSON 实现 json 的接口 MarshalJSON。元帅。请注意,此处不要使用指针作为其接收器。
(*SortedArray) Merge
|
|
Merge merges array
into current array. The parameter array
can be any garray or slice type. The difference between Merge and Append is Append supports only specified slice type, but Merge supports more parameter types.
合并 array
合并到当前数组中。该参数 array
可以是任何 garray 或 slice 类型。Merge 和 Append 的区别在于 Append 仅支持指定的切片类型,但 Merge 支持更多参数类型。
(*SortedArray) PopLeft
|
|
PopLeft pops and returns an item from the beginning of array. Note that if the array is empty, the found
is false.
PopLeft 弹出并返回数组开头的项。请注意,如果数组为空,则为 found
false。
(*SortedArray) PopLefts
|
|
PopLefts pops and returns size
items from the beginning of array.
PopLefts 弹出并返回 size
数组开头的项。
(*SortedArray) PopRand
|
|
PopRand randomly pops and return an item out of array. Note that if the array is empty, the found
is false.
PopRand 随机弹出并返回数组外的项目。请注意,如果数组为空,则为 found
false。
(*SortedArray) PopRands
|
|
PopRands randomly pops and returns size
items out of array.
PopRands 随机弹出并返回 size
数组外的项目。
(*SortedArray) PopRight
|
|
PopRight pops and returns an item from the end of array. Note that if the array is empty, the found
is false.
PopRight 弹出并返回数组末尾的项。请注意,如果数组为空,则为 found
false。
(*SortedArray) PopRights
|
|
PopRights pops and returns size
items from the end of array.
PopRights 弹出并返回 size
数组末尾的项。
(*SortedArray) RLockFunc
|
|
RLockFunc locks reading by callback function f
.
RLockFunc 通过回调函数 f
锁定读取。
(*SortedArray) Rand
|
|
Rand randomly returns one item from array(no deleting).
Rand 从数组中随机返回一个项目(不删除)。
(*SortedArray) Rands
|
|
Rands randomly returns size
items from array(no deleting).
Rands 从数组中随机返回 size
项目(不删除)。
(*SortedArray) Range
|
|
Range picks and returns items by range, like array[start:end]. Notice, if in concurrent-safe usage, it returns a copy of slice; else a pointer to the underlying data.
范围按范围选取和返回项目,如 array[start:end]。请注意,如果在并发安全使用中,它会返回 slice 的副本;else 指向基础数据的指针。
If end
is negative, then the offset will start from the end of array. If end
is omitted, then the sequence will have everything from start up until the end of the array.
如果 end
为负数,则偏移量将从数组末尾开始。如果 end
省略,则序列将包含从数组开始到结束的所有内容。
(*SortedArray) Remove
|
|
Remove removes an item by index. If the given index
is out of range of the array, the found
is false.
“删除”(Remove) 按索引删除项目。如果给定 index
的超出数组的范围,则为 found
false。
(*SortedArray) RemoveValue
|
|
RemoveValue removes an item by value. It returns true if value is found in the array, or else false if not found.
RemoveValue 按值删除项目。如果在数组中找到值,则返回 true,如果未找到,则返回 false。
(*SortedArray) RemoveValues
|
|
RemoveValues removes an item by values
.
RemoveValues 通过 values
删除项目。
(*SortedArray) Search
|
|
Search searches array by value
, returns the index of value
, or returns -1 if not exists.
搜索 搜索数 value
组 by 返回 的 value
索引,如果不存在,则返回 -1。
(*SortedArray) SetArray
|
|
SetArray sets the underlying slice array with the given array
.
SetArray 使用给定 array
的 .
(*SortedArray) SetComparator
|
|
SetComparator sets/changes the comparator for sorting. It resorts the array as the comparator is changed.
SetComparator 设置/更改用于排序的比较器。当比较器发生变化时,它会对数组进行选取。
(*SortedArray) SetUnique
|
|
SetUnique sets unique mark to the array, which means it does not contain any repeated items. It also does unique check, remove all repeated items.
SetUnique 为数组设置唯一标记,这意味着它不包含任何重复项。它还进行唯一检查,删除所有重复的项目。
(*SortedArray) Slice
|
|
Slice returns the underlying data of array. Note that, if it’s in concurrent-safe usage, it returns a copy of underlying data, or else a pointer to the underlying data.
Slice 返回数组的基础数据。请注意,如果它处于并发安全使用状态,它将返回基础数据的副本,或者返回指向基础数据的指针。
(*SortedArray) Sort
|
|
Sort sorts the array in increasing order. The parameter reverse
controls whether sort in increasing order(default) or decreasing order
排序按升序对数组进行排序。该参数 reverse
控制是按递增顺序(默认)排序还是按递减顺序排序
(*SortedArray) String
|
|
String returns current array as a string, which implements like json.Marshal does.
String 以字符串形式返回当前数组,其实现方式类似于 json。元帅做到了。
(*SortedArray) SubSlice
|
|
SubSlice returns a slice of elements from the array as specified by the offset
and size
parameters. If in concurrent safe usage, it returns a copy of the slice; else a pointer.
SubSlice 从 offset
数组中返回由 and size
参数指定的元素切片。如果处于并发安全使用状态,则返回切片的副本;else 指针。
If offset is non-negative, the sequence will start at that offset in the array. If offset is negative, the sequence will start that far from the end of the array.
如果偏移量为非负数,则序列将从数组中的该偏移量开始。如果偏移量为负数,则序列将从数组末尾开始。
If length is given and is positive, then the sequence will have up to that many elements in it. If the array is shorter than the length, then only the available array elements will be present. If length is given and is negative then the sequence will stop that many elements from the end of the array. If it is omitted, then the sequence will have everything from offset up until the end of the array.
如果给定长度并且是正数,则序列中将包含多达那么多元素。如果数组短于长度,则仅存在可用的数组元素。如果给定长度并且是负数,则序列将从数组末尾停止该许多元素。如果省略它,则序列将包含从偏移量到数组末尾的所有内容。
Any possibility crossing the left border of array, it will fail.
任何越过数组左边界的可能性,都会失败。
(*SortedArray) Sum
|
|
Sum returns the sum of values in an array.
Sum 返回数组中值的总和。
(*SortedArray) Unique
|
|
Unique uniques the array, clear repeated items.
唯一唯一数组,清除重复项。
(*SortedArray) UnmarshalJSON
|
|
UnmarshalJSON implements the interface UnmarshalJSON for json.Unmarshal. Note that the comparator is set as string comparator in default.
UnmarshalJSON 实现 json 的接口 UnmarshalJSON。元帅。请注意,默认情况下,比较器设置为字符串比较器。
(*SortedArray) UnmarshalValue
|
|
UnmarshalValue is an interface implement which sets any type of value for array. Note that the comparator is set as string comparator in default.
UnmarshalValue 是一个接口实现,用于为数组设置任何类型的值。请注意,默认情况下,比较器设置为字符串比较器。
(*SortedArray) Walk
|
|
Walk applies a user supplied function f
to every item of array.
Walk 将用户提供的函数 f
应用于数组的每个项。
type SortedIntArray
|
|
SortedIntArray is a golang sorted int array with rich features. It is using increasing order in default, which can be changed by setting it a custom comparator. It contains a concurrent-safe/unsafe switch, which should be set when its initialization and cannot be changed then.
SortedIntArray 是一个功能丰富的 golang 排序 int 数组。默认情况下,它使用递增顺序,可以通过将其设置为自定义比较器来更改。它包含一个并发安全/不安全开关,应在初始化时设置该开关,然后无法更改。
func NewSortedIntArray
|
|
NewSortedIntArray creates and returns an empty sorted array. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewSortedIntArray 创建并返回一个空的排序数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
func NewSortedIntArrayComparator
|
|
NewSortedIntArrayComparator creates and returns an empty sorted array with specified comparator. The parameter safe
is used to specify whether using array in concurrent-safety which is false in default.
NewSortedIntArrayComparator 创建并返回一个具有指定比较器的空排序数组。该参数 safe
用于指定是否在 concurrent-safety 中使用 array,默认为 false。
func NewSortedIntArrayFrom
|
|
NewSortedIntArrayFrom creates and returns an sorted array with given slice array
. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewSortedIntArrayFrom 创建并返回具有给定切片 array
的排序数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
func NewSortedIntArrayFromCopy
|
|
NewSortedIntArrayFromCopy creates and returns an sorted array from a copy of given slice array
. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewSortedIntArrayFromCopy 从给定切片 array
的副本创建并返回一个排序数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
func NewSortedIntArrayRange
|
|
NewSortedIntArrayRange creates and returns an array by a range from start
to end
with step value step
.
NewSortedIntArrayRange 创建并返回一个数组,其范围为 start
从 到 end
的步长值 step
。
func NewSortedIntArraySize
|
|
NewSortedIntArraySize create and returns an sorted array with given size and cap. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewSortedIntArraySize 创建并返回具有给定大小和上限的排序数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
(*SortedIntArray) Add
|
|
Add adds one or multiple values to sorted array, the array always keeps sorted. It’s alias of function Append, see Append.
Add 将一个或多个值添加到排序数组中,该数组始终保持排序状态。它是函数 Append 的别名,请参阅 Append。
(*SortedIntArray) Append
|
|
Append adds one or multiple values to sorted array, the array always keeps sorted.
Append 将一个或多个值添加到排序数组,该数组始终保持排序状态。
(*SortedIntArray) At
|
|
At returns the value by the specified index. If the given index
is out of range of the array, it returns 0
.
at 返回指定索引的值。如果给定 index
的超出数组的范围,则返回 0
。
(*SortedIntArray) Chunk
|
|
Chunk splits an array into multiple arrays, the size of each array is determined by size
. The last chunk may contain less than size elements.
Chunk 将一个数组拆分为多个数组,每个数组的大小由 size
决定。最后一个块可能包含小于 size 的元素。
(*SortedIntArray) Clear
|
|
Clear deletes all items of current array.
清除将删除当前数组的所有项目。
(*SortedIntArray) Clone
|
|
Clone returns a new array, which is a copy of current array.
克隆返回一个新数组,它是当前数组的副本。
(*SortedIntArray) Contains
|
|
Contains checks whether a value exists in the array.
包含检查数组中是否存在值。
(*SortedIntArray) CountValues
|
|
CountValues counts the number of occurrences of all values in the array.
CountValues 计算数组中所有值的出现次数。
(*SortedIntArray) DeepCopy
|
|
DeepCopy implements interface for deep copy of current type.
DeepCopy实现了当前类型的深度拷贝接口。
(*SortedIntArray) Filter
|
|
Filter iterates array and filters elements using custom callback function. It removes the element from array if callback function filter
returns true, it or else does nothing and continues iterating.
Filter 使用自定义回调函数迭代数组和筛选元素。如果回调函数 filter
返回 true,它会从数组中删除该元素,否则它不执行任何操作并继续迭代。
(*SortedIntArray) FilterEmpty
|
|
FilterEmpty removes all zero value of the array.
FilterEmpty 删除数组的所有零值。
(*SortedIntArray) Get
|
|
Get returns the value by the specified index. If the given index
is out of range of the array, the found
is false.
Get 按指定索引返回值。如果给定 index
的超出数组的范围,则为 found
false。
(*SortedIntArray) Interfaces
|
|
Interfaces returns current array as []interface{}.
Interfaces 以 []interface{} 的形式返回当前数组。
(*SortedIntArray) IsEmpty
|
|
IsEmpty checks whether the array is empty.
IsEmpty 检查数组是否为空。
(*SortedIntArray) Iterator
|
|
Iterator is alias of IteratorAsc.
Iterator 是 IteratorAsc 的别名。
(*SortedIntArray) IteratorAsc
|
|
IteratorAsc iterates the array 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 停止。
(*SortedIntArray) IteratorDesc
|
|
IteratorDesc iterates the array 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 停止。
(*SortedIntArray) Join
|
|
Join joins array elements with a string glue
.
Join 使用字符串 glue
连接数组元素。
(*SortedIntArray) Len
|
|
Len returns the length of array.
Len 返回数组的长度。
(*SortedIntArray) LockFunc
|
|
LockFunc locks writing by callback function f
.
LockFunc 通过回调函数 f
锁定写入。
(SortedIntArray) MarshalJSON
|
|
MarshalJSON implements the interface MarshalJSON for json.Marshal. Note that do not use pointer as its receiver here.
MarshalJSON 实现 json 的接口 MarshalJSON。元帅。请注意,此处不要使用指针作为其接收器。
(*SortedIntArray) Merge
|
|
Merge merges array
into current array. The parameter array
can be any garray or slice type. The difference between Merge and Append is Append supports only specified slice type, but Merge supports more parameter types.
合并 array
合并到当前数组中。该参数 array
可以是任何 garray 或 slice 类型。Merge 和 Append 的区别在于 Append 仅支持指定的切片类型,但 Merge 支持更多参数类型。
(*SortedIntArray) PopLeft
|
|
PopLeft pops and returns an item from the beginning of array. Note that if the array is empty, the found
is false.
PopLeft 弹出并返回数组开头的项。请注意,如果数组为空,则为 found
false。
(*SortedIntArray) PopLefts
|
|
PopLefts pops and returns size
items from the beginning of array. If the given size
is greater than size of the array, it returns all elements of the array. Note that if given size
<= 0 or the array is empty, it returns nil.
PopLefts 弹出并返回 size
数组开头的项。如果给定 size
的大小大于数组的大小,则返回数组的所有元素。请注意,如果给定 size
<= 0 或数组为空,则返回 nil。
(*SortedIntArray) PopRand
|
|
PopRand randomly pops and return an item out of array. Note that if the array is empty, the found
is false.
PopRand 随机弹出并返回数组外的项目。请注意,如果数组为空,则为 found
false。
(*SortedIntArray) PopRands
|
|
PopRands randomly pops and returns size
items out of array. If the given size
is greater than size of the array, it returns all elements of the array. Note that if given size
<= 0 or the array is empty, it returns nil.
PopRands 随机弹出并返回 size
数组外的项目。如果给定 size
的大小大于数组的大小,则返回数组的所有元素。请注意,如果给定 size
<= 0 或数组为空,则返回 nil。
(*SortedIntArray) PopRight
|
|
PopRight pops and returns an item from the end of array. Note that if the array is empty, the found
is false.
PopRight 弹出并返回数组末尾的项。请注意,如果数组为空,则为 found
false。
(*SortedIntArray) PopRights
|
|
PopRights pops and returns size
items from the end of array. If the given size
is greater than size of the array, it returns all elements of the array. Note that if given size
<= 0 or the array is empty, it returns nil.
PopRights 弹出并返回 size
数组末尾的项。如果给定 size
的大小大于数组的大小,则返回数组的所有元素。请注意,如果给定 size
<= 0 或数组为空,则返回 nil。
(*SortedIntArray) RLockFunc
|
|
RLockFunc locks reading by callback function f
.
RLockFunc 通过回调函数 f
锁定读取。
(*SortedIntArray) Rand
|
|
Rand randomly returns one item from array(no deleting).
Rand 从数组中随机返回一个项目(不删除)。
(*SortedIntArray) Rands
|
|
Rands randomly returns size
items from array(no deleting).
Rands 从数组中随机返回 size
项目(不删除)。
(*SortedIntArray) Range
|
|
Range picks and returns items by range, like array[start:end]. Notice, if in concurrent-safe usage, it returns a copy of slice; else a pointer to the underlying data.
范围按范围选取和返回项目,如 array[start:end]。请注意,如果在并发安全使用中,它会返回 slice 的副本;else 指向基础数据的指针。
If end
is negative, then the offset will start from the end of array. If end
is omitted, then the sequence will have everything from start up until the end of the array.
如果 end
为负数,则偏移量将从数组末尾开始。如果 end
省略,则序列将包含从数组开始到结束的所有内容。
(*SortedIntArray) Remove
|
|
Remove removes an item by index. If the given index
is out of range of the array, the found
is false.
“删除”(Remove) 按索引删除项目。如果给定 index
的超出数组的范围,则为 found
false。
(*SortedIntArray) RemoveValue
|
|
RemoveValue removes an item by value. It returns true if value is found in the array, or else false if not found.
RemoveValue 按值删除项目。如果在数组中找到值,则返回 true,如果未找到,则返回 false。
(*SortedIntArray) RemoveValues
|
|
RemoveValues removes an item by values
.
RemoveValues 通过 values
删除项目。
(*SortedIntArray) Search
|
|
Search searches array by value
, returns the index of value
, or returns -1 if not exists.
搜索 搜索数 value
组 by 返回 的 value
索引,如果不存在,则返回 -1。
(*SortedIntArray) SetArray
|
|
SetArray sets the underlying slice array with the given array
.
SetArray 使用给定 array
的 .
(*SortedIntArray) SetUnique
|
|
SetUnique sets unique mark to the array, which means it does not contain any repeated items. It also do unique check, remove all repeated items.
SetUnique 为数组设置唯一标记,这意味着它不包含任何重复项。它还进行唯一检查,删除所有重复的项目。
(*SortedIntArray) Slice
|
|
Slice returns the underlying data of array. Note that, if it’s in concurrent-safe usage, it returns a copy of underlying data, or else a pointer to the underlying data.
Slice 返回数组的基础数据。请注意,如果它处于并发安全使用状态,它将返回基础数据的副本,或者返回指向基础数据的指针。
(*SortedIntArray) Sort
|
|
Sort sorts the array in increasing order. The parameter reverse
controls whether sort in increasing order(default) or decreasing order.
排序按升序对数组进行排序。该参数 reverse
控制是按递增顺序(默认)排序还是按递减顺序排序。
(*SortedIntArray) String
|
|
String returns current array as a string, which implements like json.Marshal does.
String 以字符串形式返回当前数组,其实现方式类似于 json。元帅做到了。
(*SortedIntArray) SubSlice
|
|
SubSlice returns a slice of elements from the array as specified by the offset
and size
parameters. If in concurrent safe usage, it returns a copy of the slice; else a pointer.
SubSlice 从 offset
数组中返回由 and size
参数指定的元素切片。如果处于并发安全使用状态,则返回切片的副本;else 指针。
If offset is non-negative, the sequence will start at that offset in the array. If offset is negative, the sequence will start that far from the end of the array.
如果偏移量为非负数,则序列将从数组中的该偏移量开始。如果偏移量为负数,则序列将从数组末尾开始。
If length is given and is positive, then the sequence will have up to that many elements in it. If the array is shorter than the length, then only the available array elements will be present. If length is given and is negative then the sequence will stop that many elements from the end of the array. If it is omitted, then the sequence will have everything from offset up until the end of the array.
如果给定长度并且是正数,则序列中将包含多达那么多元素。如果数组短于长度,则仅存在可用的数组元素。如果给定长度并且是负数,则序列将从数组末尾停止该许多元素。如果省略它,则序列将包含从偏移量到数组末尾的所有内容。
Any possibility crossing the left border of array, it will fail.
任何越过数组左边界的可能性,都会失败。
(*SortedIntArray) Sum
|
|
Sum returns the sum of values in an array.
Sum 返回数组中值的总和。
(*SortedIntArray) Unique
|
|
Unique uniques the array, clear repeated items.
唯一唯一数组,清除重复项。
(*SortedIntArray) UnmarshalJSON
|
|
UnmarshalJSON implements the interface UnmarshalJSON for json.Unmarshal.
UnmarshalJSON 实现 json 的接口 UnmarshalJSON。元帅。
(*SortedIntArray) UnmarshalValue
|
|
UnmarshalValue is an interface implement which sets any type of value for array.
UnmarshalValue 是一个接口实现,用于为数组设置任何类型的值。
(*SortedIntArray) Walk
|
|
Walk applies a user supplied function f
to every item of array.
Walk 将用户提供的函数 f
应用于数组的每个项。
type SortedStrArray
|
|
SortedStrArray is a golang sorted string array with rich features. It is using increasing order in default, which can be changed by setting it a custom comparator. It contains a concurrent-safe/unsafe switch, which should be set when its initialization and cannot be changed then.
SortedStrArray 是一个具有丰富功能的 golang 排序字符串数组。默认情况下,它使用递增顺序,可以通过将其设置为自定义比较器来更改。它包含一个并发安全/不安全开关,应在初始化时设置该开关,然后无法更改。
func NewSortedStrArray
|
|
NewSortedStrArray creates and returns an empty sorted array. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewSortedStrArray 创建并返回一个空的排序数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
Example
|
|
func NewSortedStrArrayComparator
|
|
NewSortedStrArrayComparator creates and returns an empty sorted array with specified comparator. The parameter safe
is used to specify whether using array in concurrent-safety which is false in default.
NewSortedStrArrayComparator 创建并返回一个具有指定比较器的空排序数组。该参数 safe
用于指定是否在 concurrent-safety 中使用 array,默认为 false。
func NewSortedStrArrayFrom
|
|
NewSortedStrArrayFrom creates and returns an sorted array with given slice array
. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewSortedStrArrayFrom 创建并返回具有给定切片 array
的排序数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
func NewSortedStrArrayFromCopy
|
|
NewSortedStrArrayFromCopy creates and returns an sorted array from a copy of given slice array
. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewSortedStrArrayFromCopy 从给定切片 array
的副本创建并返回一个排序数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
func NewSortedStrArraySize
|
|
NewSortedStrArraySize create and returns an sorted array with given size and cap. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewSortedStrArraySize 创建并返回具有给定大小和上限的排序数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
Example
|
|
(*SortedStrArray) Add
|
|
Add adds one or multiple values to sorted array, the array always keeps sorted. It’s alias of function Append, see Append.
Add 将一个或多个值添加到排序数组中,该数组始终保持排序状态。它是函数 Append 的别名,请参阅 Append。
Example
|
|
(*SortedStrArray) Append
|
|
Append adds one or multiple values to sorted array, the array always keeps sorted.
Append 将一个或多个值添加到排序数组,该数组始终保持排序状态。
Example
|
|
(*SortedStrArray) At
|
|
At returns the value by the specified index. If the given index
is out of range of the array, it returns an empty string.
at 返回指定索引的值。如果给定 index
的超出数组的范围,则返回一个空字符串。
Example
|
|
(*SortedStrArray) Chunk
|
|
Chunk splits an array into multiple arrays, the size of each array is determined by size
. The last chunk may contain less than size elements.
Chunk 将一个数组拆分为多个数组,每个数组的大小由 size
决定。最后一个块可能包含小于 size 的元素。
Example
|
|
(*SortedStrArray) Clear
|
|
Clear deletes all items of current array.
清除将删除当前数组的所有项目。
Example
|
|
(*SortedStrArray) Clone
|
|
Clone returns a new array, which is a copy of current array.
克隆返回一个新数组,它是当前数组的副本。
Example
|
|
(*SortedStrArray) Contains
|
|
Contains checks whether a value exists in the array.
包含检查数组中是否存在值。
Example
|
|
(*SortedStrArray) ContainsI
|
|
ContainsI checks whether a value exists in the array with case-insensitively. Note that it internally iterates the whole array to do the comparison with case-insensitively.
ContainsI 使用不区分大小写的方式检查数组中是否存在值。请注意,它在内部迭代整个数组以不区分大小写地进行比较。
Example
|
|
(*SortedStrArray) CountValues
|
|
CountValues counts the number of occurrences of all values in the array.
CountValues 计算数组中所有值的出现次数。
Example
|
|
(*SortedStrArray) DeepCopy
|
|
DeepCopy implements interface for deep copy of current type.
DeepCopy实现了当前类型的深度拷贝接口。
(*SortedStrArray) Filter
|
|
Filter iterates array and filters elements using custom callback function. It removes the element from array if callback function filter
returns true, it or else does nothing and continues iterating.
Filter 使用自定义回调函数迭代数组和筛选元素。如果回调函数 filter
返回 true,它会从数组中删除该元素,否则它不执行任何操作并继续迭代。
Example
|
|
(*SortedStrArray) FilterEmpty
|
|
FilterEmpty removes all empty string value of the array.
FilterEmpty 删除数组的所有空字符串值。
Example
|
|
(*SortedStrArray) Get
|
|
Get returns the value by the specified index. If the given index
is out of range of the array, the found
is false.
Get 按指定索引返回值。如果给定 index
的超出数组的范围,则为 found
false。
Example
|
|
(*SortedStrArray) Interfaces
|
|
Interfaces returns current array as []interface{}.
Interfaces 以 []interface{} 的形式返回当前数组。
Example
|
|
(*SortedStrArray) IsEmpty
|
|
IsEmpty checks whether the array is empty.
IsEmpty 检查数组是否为空。
Example
|
|
(*SortedStrArray) Iterator
|
|
Iterator is alias of IteratorAsc.
Iterator 是 IteratorAsc 的别名。
Example
|
|
(*SortedStrArray) IteratorAsc
|
|
IteratorAsc iterates the array 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
|
|
(*SortedStrArray) IteratorDesc
|
|
IteratorDesc iterates the array 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
|
|
(*SortedStrArray) Join
|
|
Join joins array elements with a string glue
.
Join 使用字符串 glue
连接数组元素。
Example
|
|
(*SortedStrArray) Len
|
|
Len returns the length of array.
Len 返回数组的长度。
Example
|
|
(*SortedStrArray) LockFunc
|
|
LockFunc locks writing by callback function f
.
LockFunc 通过回调函数 f
锁定写入。
Example
|
|
(SortedStrArray) MarshalJSON
|
|
MarshalJSON implements the interface MarshalJSON for json.Marshal. Note that do not use pointer as its receiver here.
MarshalJSON 实现 json 的接口 MarshalJSON。元帅。请注意,此处不要使用指针作为其接收器。
Example
|
|
(*SortedStrArray) Merge
|
|
Merge merges array
into current array. The parameter array
can be any garray or slice type. The difference between Merge and Append is Append supports only specified slice type, but Merge supports more parameter types.
合并 array
合并到当前数组中。该参数 array
可以是任何 garray 或 slice 类型。Merge 和 Append 的区别在于 Append 仅支持指定的切片类型,但 Merge 支持更多参数类型。
Example
|
|
(*SortedStrArray) PopLeft
|
|
PopLeft pops and returns an item from the beginning of array. Note that if the array is empty, the found
is false.
PopLeft 弹出并返回数组开头的项。请注意,如果数组为空,则为 found
false。
Example
|
|
(*SortedStrArray) PopLefts
|
|
PopLefts pops and returns size
items from the beginning of array. If the given size
is greater than size of the array, it returns all elements of the array. Note that if given size
<= 0 or the array is empty, it returns nil.
PopLefts 弹出并返回 size
数组开头的项。如果给定 size
的大小大于数组的大小,则返回数组的所有元素。请注意,如果给定 size
<= 0 或数组为空,则返回 nil。
Example
|
|
(*SortedStrArray) PopRand
|
|
PopRand randomly pops and return an item out of array. Note that if the array is empty, the found
is false.
PopRand 随机弹出并返回数组外的项目。请注意,如果数组为空,则为 found
false。
(*SortedStrArray) PopRands
|
|
PopRands randomly pops and returns size
items out of array. If the given size
is greater than size of the array, it returns all elements of the array. Note that if given size
<= 0 or the array is empty, it returns nil.
PopRands 随机弹出并返回 size
数组外的项目。如果给定 size
的大小大于数组的大小,则返回数组的所有元素。请注意,如果给定 size
<= 0 或数组为空,则返回 nil。
Example
|
|
(*SortedStrArray) PopRight
|
|
PopRight pops and returns an item from the end of array. Note that if the array is empty, the found
is false.
PopRight 弹出并返回数组末尾的项。请注意,如果数组为空,则为 found
false。
Example
|
|
(*SortedStrArray) PopRights
|
|
PopRights pops and returns size
items from the end of array. If the given size
is greater than size of the array, it returns all elements of the array. Note that if given size
<= 0 or the array is empty, it returns nil.
PopRights 弹出并返回 size
数组末尾的项。如果给定 size
的大小大于数组的大小,则返回数组的所有元素。请注意,如果给定 size
<= 0 或数组为空,则返回 nil。
Example
|
|
(*SortedStrArray) RLockFunc
|
|
RLockFunc locks reading by callback function f
.
RLockFunc 通过回调函数 f
锁定读取。
Example
|
|
(*SortedStrArray) Rand
|
|
Rand randomly returns one item from array(no deleting).
Rand 从数组中随机返回一个项目(不删除)。
Example
|
|
(*SortedStrArray) Rands
|
|
Rands randomly returns size
items from array(no deleting).
Rands 从数组中随机返回 size
项目(不删除)。
Example
|
|
(*SortedStrArray) Range
|
|
Range picks and returns items by range, like array[start:end]. Notice, if in concurrent-safe usage, it returns a copy of slice; else a pointer to the underlying data.
范围按范围选取和返回项目,如 array[start:end]。请注意,如果在并发安全使用中,它会返回 slice 的副本;else 指向基础数据的指针。
If end
is negative, then the offset will start from the end of array. If end
is omitted, then the sequence will have everything from start up until the end of the array.
如果 end
为负数,则偏移量将从数组末尾开始。如果 end
省略,则序列将包含从数组开始到结束的所有内容。
Example
|
|
(*SortedStrArray) Remove
|
|
Remove removes an item by index. If the given index
is out of range of the array, the found
is false.
“删除”(Remove) 按索引删除项目。如果给定 index
的超出数组的范围,则为 found
false。
Example
|
|
(*SortedStrArray) RemoveValue
|
|
RemoveValue removes an item by value. It returns true if value is found in the array, or else false if not found.
RemoveValue 按值删除项目。如果在数组中找到值,则返回 true,如果未找到,则返回 false。
Example
|
|
(*SortedStrArray) RemoveValues
|
|
RemoveValues removes an item by values
.
RemoveValues 通过 values
删除项目。
(*SortedStrArray) Search
|
|
Search searches array by value
, returns the index of value
, or returns -1 if not exists.
搜索 搜索数 value
组 by 返回 的 value
索引,如果不存在,则返回 -1。
Example
|
|
(*SortedStrArray) SetArray
|
|
SetArray sets the underlying slice array with the given array
.
SetArray 使用给定 array
的 .
Example
|
|
(*SortedStrArray) SetUnique
|
|
SetUnique sets unique mark to the array, which means it does not contain any repeated items. It also do unique check, remove all repeated items.
SetUnique 为数组设置唯一标记,这意味着它不包含任何重复项。它还进行唯一检查,删除所有重复的项目。
Example
|
|
(*SortedStrArray) Slice
|
|
Slice returns the underlying data of array. Note that, if it’s in concurrent-safe usage, it returns a copy of underlying data, or else a pointer to the underlying data.
Slice 返回数组的基础数据。请注意,如果它处于并发安全使用状态,它将返回基础数据的副本,或者返回指向基础数据的指针。
Example
|
|
(*SortedStrArray) Sort
|
|
Sort sorts the array in increasing order. The parameter reverse
controls whether sort in increasing order(default) or decreasing order.
排序按升序对数组进行排序。该参数 reverse
控制是按递增顺序(默认)排序还是按递减顺序排序。
Example
|
|
(*SortedStrArray) String
|
|
String returns current array as a string, which implements like json.Marshal does.
String 以字符串形式返回当前数组,其实现方式类似于 json。元帅做到了。
Example
|
|
(*SortedStrArray) SubSlice
|
|
SubSlice returns a slice of elements from the array as specified by the offset
and size
parameters. If in concurrent safe usage, it returns a copy of the slice; else a pointer.
SubSlice 从 offset
数组中返回由 and size
参数指定的元素切片。如果处于并发安全使用状态,则返回切片的副本;else 指针。
If offset is non-negative, the sequence will start at that offset in the array. If offset is negative, the sequence will start that far from the end of the array.
如果偏移量为非负数,则序列将从数组中的该偏移量开始。如果偏移量为负数,则序列将从数组末尾开始。
If length is given and is positive, then the sequence will have up to that many elements in it. If the array is shorter than the length, then only the available array elements will be present. If length is given and is negative then the sequence will stop that many elements from the end of the array. If it is omitted, then the sequence will have everything from offset up until the end of the array.
如果给定长度并且是正数,则序列中将包含多达那么多元素。如果数组短于长度,则仅存在可用的数组元素。如果给定长度并且是负数,则序列将从数组末尾停止该许多元素。如果省略它,则序列将包含从偏移量到数组末尾的所有内容。
Any possibility crossing the left border of array, it will fail.
任何越过数组左边界的可能性,都会失败。
Example
|
|
(*SortedStrArray) Sum
|
|
Sum returns the sum of values in an array.
Sum 返回数组中值的总和。
Example
|
|
(*SortedStrArray) Unique
|
|
Unique uniques the array, clear repeated items.
唯一唯一数组,清除重复项。
Example
|
|
(*SortedStrArray) UnmarshalJSON
|
|
UnmarshalJSON implements the interface UnmarshalJSON for json.Unmarshal.
UnmarshalJSON 实现 json 的接口 UnmarshalJSON。元帅。
Example
|
|
(*SortedStrArray) UnmarshalValue
|
|
UnmarshalValue is an interface implement which sets any type of value for array.
UnmarshalValue 是一个接口实现,用于为数组设置任何类型的值。
Example
|
|
(*SortedStrArray) Walk
|
|
Walk applies a user supplied function f
to every item of array.
Walk 将用户提供的函数 f
应用于数组的每个项。
Example
|
|
type StrArray
|
|
StrArray is a golang string array with rich features. It contains a concurrent-safe/unsafe switch, which should be set when its initialization and cannot be changed then.
StrArray 是一个功能丰富的 golang 字符串数组。它包含一个并发安全/不安全开关,应在初始化时设置该开关,然后无法更改。
func NewStrArray
|
|
NewStrArray creates and returns an empty array. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewStrArray 创建并返回一个空数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
Example
|
|
func NewStrArrayFrom
|
|
NewStrArrayFrom creates and returns an array with given slice array
. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewStrArrayFrom 创建并返回一个具有给定切片 array
的数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
Example
|
|
func NewStrArrayFromCopy
|
|
NewStrArrayFromCopy creates and returns an array from a copy of given slice array
. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewStrArrayFromCopy 从给定切片 array
的副本创建并返回数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
Example
|
|
func NewStrArraySize
|
|
NewStrArraySize create and returns an array with given size and cap. The parameter safe
is used to specify whether using array in concurrent-safety, which is false in default.
NewStrArraySize 创建并返回具有给定大小和上限的数组。该参数 safe
用于指定是否在 concurrent-safety 中使用数组,默认为 false。
Example
|
|
(*StrArray) Append
|
|
Append is alias of PushRight,please See PushRight.
Append 是 PushRight 的别名,请参见 PushRight。
Example
|
|
(*StrArray) At
|
|
At returns the value by the specified index. If the given index
is out of range of the array, it returns an empty string.
at 返回指定索引的值。如果给定 index
的超出数组的范围,则返回一个空字符串。
Example
|
|
(*StrArray) Chunk
|
|
Chunk splits an array into multiple arrays, the size of each array is determined by size
. The last chunk may contain less than size elements.
Chunk 将一个数组拆分为多个数组,每个数组的大小由 size
决定。最后一个块可能包含小于 size 的元素。
Example
|
|
(*StrArray) Clear
|
|
Clear deletes all items of current array.
清除将删除当前数组的所有项目。
Example
|
|
(*StrArray) Clone
|
|
Clone returns a new array, which is a copy of current array.
克隆返回一个新数组,它是当前数组的副本。
Example
|
|
(*StrArray) Contains
|
|
Contains checks whether a value exists in the array.
包含检查数组中是否存在值。
Example
|
|
(*StrArray) ContainsI
|
|
ContainsI checks whether a value exists in the array with case-insensitively. Note that it internally iterates the whole array to do the comparison with case-insensitively.
ContainsI 使用不区分大小写的方式检查数组中是否存在值。请注意,它在内部迭代整个数组以不区分大小写地进行比较。
Example
|
|
(*StrArray) CountValues
|
|
CountValues counts the number of occurrences of all values in the array.
CountValues 计算数组中所有值的出现次数。
Example
|
|
(*StrArray) DeepCopy
|
|
DeepCopy implements interface for deep copy of current type.
DeepCopy实现了当前类型的深度拷贝接口。
(*StrArray) Fill
|
|
Fill fills an array with num entries of the value value
, keys starting at the startIndex
parameter.
Fill 使用值 value
的 num 个条目填充数组,键从 startIndex
参数开始。
Example
|
|
(*StrArray) Filter
|
|
Filter iterates array and filters elements using custom callback function. It removes the element from array if callback function filter
returns true, it or else does nothing and continues iterating.
Filter 使用自定义回调函数迭代数组和筛选元素。如果回调函数 filter
返回 true,它会从数组中删除该元素,否则它不执行任何操作并继续迭代。
Example
|
|
(*StrArray) FilterEmpty
|
|
FilterEmpty removes all empty string value of the array.
FilterEmpty 删除数组的所有空字符串值。
Example
|
|
(*StrArray) Get
|
|
Get returns the value by the specified index. If the given index
is out of range of the array, the found
is false.
Get 按指定索引返回值。如果给定 index
的超出数组的范围,则为 found
false。
Example
|
|
(*StrArray) InsertAfter
|
|
InsertAfter inserts the values
to the back of index
.
InsertAfter 将 插入 values
到 index
的后面。
Example
|
|
(*StrArray) InsertBefore
|
|
InsertBefore inserts the values
to the front of index
.
InsertBefore 将 插入 values
到 index
的前面。
Example
|
|
(*StrArray) Interfaces
|
|
Interfaces returns current array as []interface{}.
Interfaces 以 []interface{} 的形式返回当前数组。
Example
|
|
(*StrArray) IsEmpty
|
|
IsEmpty checks whether the array is empty.
IsEmpty 检查数组是否为空。
Example
|
|
(*StrArray) Iterator
|
|
Iterator is alias of IteratorAsc.
Iterator 是 IteratorAsc 的别名。
Example
|
|
(*StrArray) IteratorAsc
|
|
IteratorAsc iterates the array 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
|
|
(*StrArray) IteratorDesc
|
|
IteratorDesc iterates the array 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
|
|
(*StrArray) Join
|
|
Join joins array elements with a string glue
.
Join 使用字符串 glue
连接数组元素。
Example
|
|
(*StrArray) Len
|
|
Len returns the length of array.
Len 返回数组的长度。
Example
|
|
(*StrArray) LockFunc
|
|
LockFunc locks writing by callback function f
.
LockFunc 通过回调函数 f
锁定写入。
Example
|
|
(StrArray) MarshalJSON
|
|
MarshalJSON implements the interface MarshalJSON for json.Marshal. Note that do not use pointer as its receiver here.
MarshalJSON 实现 json 的接口 MarshalJSON。元帅。请注意,此处不要使用指针作为其接收器。
Example
|
|
(*StrArray) Merge
|
|
Merge merges array
into current array. The parameter array
can be any garray or slice type. The difference between Merge and Append is Append supports only specified slice type, but Merge supports more parameter types.
合并 array
合并到当前数组中。该参数 array
可以是任何 garray 或 slice 类型。Merge 和 Append 的区别在于 Append 仅支持指定的切片类型,但 Merge 支持更多参数类型。
Example
|
|
(*StrArray) Pad
|
|
Pad pads array to the specified length with value
. If size is positive then the array is padded on the right, or negative on the left. If the absolute value of size
is less than or equal to the length of the array then no padding takes place.
焊盘垫数组设置为指定 value
长度。如果大小为正数,则数组在右侧填充,或在左侧填充为负数。如果 的 size
绝对值小于或等于数组的长度,则不会进行填充。
Example
|
|
(*StrArray) PopLeft
|
|
PopLeft pops and returns an item from the beginning of array. Note that if the array is empty, the found
is false.
PopLeft 弹出并返回数组开头的项。请注意,如果数组为空,则为 found
false。
Example
|
|
(*StrArray) PopLefts
|
|
PopLefts pops and returns size
items from the beginning of array. If the given size
is greater than size of the array, it returns all elements of the array. Note that if given size
<= 0 or the array is empty, it returns nil.
PopLefts 弹出并返回 size
数组开头的项。如果给定 size
的大小大于数组的大小,则返回数组的所有元素。请注意,如果给定 size
<= 0 或数组为空,则返回 nil。
Example
|
|
(*StrArray) PopRand
|
|
PopRand randomly pops and return an item out of array. Note that if the array is empty, the found
is false.
PopRand 随机弹出并返回数组外的项目。请注意,如果数组为空,则为 found
false。
Example
|
|
(*StrArray) PopRands
|
|
PopRands randomly pops and returns size
items out of array. If the given size
is greater than size of the array, it returns all elements of the array. Note that if given size
<= 0 or the array is empty, it returns nil.
PopRands 随机弹出并返回 size
数组外的项目。如果给定 size
的大小大于数组的大小,则返回数组的所有元素。请注意,如果给定 size
<= 0 或数组为空,则返回 nil。
Example
|
|
(*StrArray) PopRight
|
|
PopRight pops and returns an item from the end of array. Note that if the array is empty, the found
is false.
PopRight 弹出并返回数组末尾的项。请注意,如果数组为空,则为 found
false。
Example
|
|
(*StrArray) PopRights
|
|
PopRights pops and returns size
items from the end of array. If the given size
is greater than size of the array, it returns all elements of the array. Note that if given size
<= 0 or the array is empty, it returns nil.
PopRights 弹出并返回 size
数组末尾的项。如果给定 size
的大小大于数组的大小,则返回数组的所有元素。请注意,如果给定 size
<= 0 或数组为空,则返回 nil。
Example
|
|
(*StrArray) PushLeft
|
|
PushLeft pushes one or multiple items to the beginning of array.
PushLeft 将一个或多个项推送到数组的开头。
Example
|
|
(*StrArray) PushRight
|
|
PushRight pushes one or multiple items to the end of array. It equals to Append.
PushRight 将一个或多个项推送到数组的末尾。它等于追加。
Example
|
|
(*StrArray) RLockFunc
|
|
RLockFunc locks reading by callback function f
.
RLockFunc 通过回调函数 f
锁定读取。
Example
|
|
(*StrArray) Rand
|
|
Rand randomly returns one item from array(no deleting).
Rand 从数组中随机返回一个项目(不删除)。
Example
|
|
(*StrArray) Rands
|
|
Rands randomly returns size
items from array(no deleting).
Rands 从数组中随机返回 size
项目(不删除)。
Example
|
|
(*StrArray) Range
|
|
Range picks and returns items by range, like array[start:end]. Notice, if in concurrent-safe usage, it returns a copy of slice; else a pointer to the underlying data.
范围按范围选取和返回项目,如 array[start:end]。请注意,如果在并发安全使用中,它会返回 slice 的副本;else 指向基础数据的指针。
If end
is negative, then the offset will start from the end of array. If end
is omitted, then the sequence will have everything from start up until the end of the array.
如果 end
为负数,则偏移量将从数组末尾开始。如果 end
省略,则序列将包含从数组开始到结束的所有内容。
Example
|
|
(*StrArray) Remove
|
|
Remove removes an item by index. If the given index
is out of range of the array, the found
is false.
“删除”(Remove) 按索引删除项目。如果给定 index
的超出数组的范围,则为 found
false。
Example
|
|
(*StrArray) RemoveValue
|
|
RemoveValue removes an item by value. It returns true if value is found in the array, or else false if not found.
RemoveValue 按值删除项目。如果在数组中找到值,则返回 true,如果未找到,则返回 false。
Example
|
|
(*StrArray) RemoveValues
|
|
RemoveValues removes multiple items by values
.
RemoveValues 按 values
删除多个项目。
(*StrArray) Replace
|
|
Replace replaces the array items by given array
from the beginning of array.
Replace 将数组项替换为从数组开头开始给定 array
的数组项。
Example
|
|
(*StrArray) Reverse
|
|
Reverse makes array with elements in reverse order.
Reverse 使数组具有相反顺序的元素。
Example
|
|
(*StrArray) Search
|
|
Search searches array by value
, returns the index of value
, or returns -1 if not exists.
搜索 搜索数 value
组 by 返回 的 value
索引,如果不存在,则返回 -1。
Example
|
|
(*StrArray) Set
|
|
Set sets value to specified index.
将设置值设置为指定索引。
Example
|
|
(*StrArray) SetArray
|
|
SetArray sets the underlying slice array with the given array
.
SetArray 使用给定 array
的 .
Example
|
|
(*StrArray) Shuffle
|
|
Shuffle randomly shuffles the array.
随机洗牌数组。
Example
|
|
(*StrArray) Slice
|
|
Slice returns the underlying data of array. Note that, if it’s in concurrent-safe usage, it returns a copy of underlying data, or else a pointer to the underlying data.
Slice 返回数组的基础数据。请注意,如果它处于并发安全使用状态,它将返回基础数据的副本,或者返回指向基础数据的指针。
Example
|
|
(*StrArray) Sort
|
|
Sort sorts the array in increasing order. The parameter reverse
controls whether sort in increasing order(default) or decreasing order
排序按升序对数组进行排序。该参数 reverse
控制是按递增顺序(默认)排序还是按递减顺序排序
Example
|
|
(*StrArray) SortFunc
|
|
SortFunc sorts the array by custom function less
.
SortFunc 按自定义函数 less
对数组进行排序。
Example
|
|
(*StrArray) String
|
|
String returns current array as a string, which implements like json.Marshal does.
String 以字符串形式返回当前数组,其实现方式类似于 json。元帅做到了。
Example
|
|
(*StrArray) SubSlice
|
|
SubSlice returns a slice of elements from the array as specified by the offset
and size
parameters. If in concurrent safe usage, it returns a copy of the slice; else a pointer.
SubSlice 从 offset
数组中返回由 and size
参数指定的元素切片。如果处于并发安全使用状态,则返回切片的副本;else 指针。
If offset is non-negative, the sequence will start at that offset in the array. If offset is negative, the sequence will start that far from the end of the array.
如果偏移量为非负数,则序列将从数组中的该偏移量开始。如果偏移量为负数,则序列将从数组末尾开始。
If length is given and is positive, then the sequence will have up to that many elements in it. If the array is shorter than the length, then only the available array elements will be present. If length is given and is negative then the sequence will stop that many elements from the end of the array. If it is omitted, then the sequence will have everything from offset up until the end of the array.
如果给定长度并且是正数,则序列中将包含多达那么多元素。如果数组短于长度,则仅存在可用的数组元素。如果给定长度并且是负数,则序列将从数组末尾停止该许多元素。如果省略它,则序列将包含从偏移量到数组末尾的所有内容。
Any possibility crossing the left border of array, it will fail.
任何越过数组左边界的可能性,都会失败。
Example
|
|
(*StrArray) Sum
|
|
Sum returns the sum of values in an array.
Sum 返回数组中值的总和。
Example
|
|
(*StrArray) Unique
|
|
Unique uniques the array, clear repeated items. Example: [1,1,2,3,2] -> [1,2,3]
唯一唯一数组,清除重复项。示例:[1,1,2,3,2] -> [1,2,3]
Example
|
|
(*StrArray) UnmarshalJSON
|
|
UnmarshalJSON implements the interface UnmarshalJSON for json.Unmarshal.
UnmarshalJSON 实现 json 的接口 UnmarshalJSON。元帅。
Example
|
|
(*StrArray) UnmarshalValue
|
|
UnmarshalValue is an interface implement which sets any type of value for array.
UnmarshalValue 是一个接口实现,用于为数组设置任何类型的值。
Example
|
|
(*StrArray) Walk
|
|
Walk applies a user supplied function f
to every item of array.
Walk 将用户提供的函数 f
应用于数组的每个项。
Example Walk
示例步行
|
|