package
0.0.0-20241109021313-6e2457b08dcf
Repository: https://github.com/hjh0924/genericgo.git
Documentation: pkg.go.dev

# Functions

Add 在index处添加元素 index 范围应为[0, len(src)] 如果 index == len(src) 则表示往末尾添加元素.
Contains 检查目标元素是否包含在源切片中。.
ContainsAll 检查源切片是否包含目标切片中的所有元素。.
ContainsAllFunc 检查源切片是否包含目标切片中的所有元素,使用提供的 isEqual 函数来比较元素。 优先使用 ContainsAll.
ContainsAny 检查源切片中是否包含目标切片中的任何一个元素。.
ContainsAnyFunc 检查源切片中是否包含目标切片中的任何一个元素,使用提供的 isEqual 函数来比较元素。 优先使用 ContainsAny.
ContainsFunc 检查源切片中是否包含满足匹配条件的元素。 match 函数定义了元素的匹配条件。 优先使用 Contains.
Delete 删除 index 处的元素 返回删除后的切片,删除的元素,以及错误信息.
DeleteIf 删除满足条件(condition)的元素 所有操作都会在原切片上进行,以提高性能。 被删除元素之后的元素会向前移动,有且只会移动一次。 condition func(index int, value T) bool:一个函数,用于判断切片中的元素是否应该被删除。 用户可以根据索引或元素的具体值来判断是否删除.
Difference 返回两个切片的差集,即在第一个切片中但不在第二个切片中的元素。 注意:已去重,并且只支持 comparable 类型,返回的元素顺序不固定.
DifferenceFunc 返回两个切片的差集,使用自定义的相等性比较函数。 isEqual 是一个函数,用于比较两个元素是否相等。 注意:已去重,支持任意类型,返回的元素顺序不固定.
FilterAndMap 函数对源切片进行过滤和映射操作。 仅包含通过 match 函数的元素,并使用 mapping 函数将它们转换为 Result 类型。 返回一个包含所有映射结果的新切片。.
Find 函数在给定的切片中查找第一个满足 matchFunc 函数条件的元素。 如果找到这样的元素,函数返回该元素和 true; 如果没有找到,返回类型 T 的零值和 false。.
FindAll 函数在给定的切片中查找所有满足 matchFunc 函数条件的元素。 函数始终返回一个切片(可能是空切片),如果至少有一个元素满足条件,返回 true;否则返回 false。.
Index 在给定的可比较类型的切片中搜索第一个与目标值相等的元素的索引。 如果没有找到,则返回-1。.
IndexAll 在给定的切片中搜索所有满足匹配函数条件的元素的索引。.
IndexAllFunc 在给定的切片中搜索所有满足匹配函数条件的元素的索引。 优先使用 IndexAll.
IndexFunc 在给定的切片中搜索第一个满足匹配函数条件的元素的索引。 如果没有找到,则返回-1。 优先使用 Index.
Intersection 返回两个切片的交集,即在两个切片中都存在的元素。 注意:已去重,并且只支持 comparable 类型,返回的元素顺序不固定.
IntersectionFunc 返回两个切片的交集,使用自定义的相等性比较函数。 isEqual 是一个函数,用于比较两个元素是否相等。 注意:已去重,支持任意类型,返回的元素顺序不固定.
LastIndex 在给定的可比较类型的切片中搜索最后一个与目标值相等的元素的索引。 如果没有找到,则返回-1。.
LastIndexFunc 在给定的切片中搜索最后一个满足匹配函数条件的元素的索引。 如果没有找到,则返回-1。 优先使用 LastIndex.
Map 函数通过提供的映射函数对源切片的每个元素执行操作,并返回结果切片。 mapping 函数定义了如何将 Source 类型的元素转换为 Result 类型的结果。 该函数返回一个新的切片,包含所有转换后的结果。.
Max 函数返回给定切片中的最大值 如果切片为空,将返回 NewErrEmptySlice 错误 在使用 float32 或者 float64 的时候要小心精度问题.
Min 函数返回给定切片中的最小值 如果切片为空,将返回 NewErrEmptySlice 错误 在使用 float32 或者 float64 的时候要小心精度问题.
Reverse 函数接受一个类型为T的切片,并返回这个切片的逆序副本.
ReverseInPlace 函数接受一个类型为T的切片,并在原地逆序该切片.
ShrinkSlice 尝试缩减切片的容量以匹配其长度。 如果原始切片的容量可以被减少,则返回一个新的,容量更小的切片; 否则返回原始切片。.
Sum 函数返回给定切片中所有元素的总和 如果切片为空,将返回 0 值和 NewErrEmptySlice 错误 在使用 float32 或者 float64 的时候要小心精度问题.
SymmetricDifference 返回两个切片的对称差集,即两个切片中不重叠的元素组成的切片。 注意:已去重,并且只支持 comparable 类型,返回的元素顺序不固定.
SymmetricDifferenceFunc 返回两个切片的对称差集,使用自定义的相等性比较函数。 isEqual 是一个函数,用于比较两个元素是否相等。 注意:已去重,支持任意类型,返回的元素顺序不固定.
ToMap 将元素切片转换为映射,其中元素作为值,由KeyExtractor函数生成的键作为映射的键。 KeyExtractor 函数接收一个元素并返回一个用作映射键的值。 返回结果是一个映射,其中包含由KeyExtractor函数生成的键和对应的元素。 注意:如果有重复的键,则只包含最后出现的元素,因为映射的键是唯一的。.
ToMapV 将元素切片转换为映射,其中由KeyValueMapper函数生成的键值对存储在映射中。 KeyValueMapper 函数接收一个元素并返回一个键值对。 返回结果是一个映射,其中包含由KeyValueMapper函数生成的键值对。 注意:如果有重复的键,则只包含最后出现的元素键值对,因为映射的键是唯一的。.
Union 计算两个切片的并集,返回一个包含所有不重复元素的新切片。 注意:已去重,并且只支持 comparable 类型,返回的元素顺序不固定.
UnionFunc 计算两个切片的并集,使用自定义的相等性比较函数。 注意:已去重,支持任意类型,返回的元素顺序不固定.

# Type aliases

KeyExtractor 定义了一个函数类型,它接收一个元素并返回一个用作映射键的值.
KeyValueMapper 定义了一个函数类型,它接收一个元素并返回一个键值对.