slice

package
v1.0.14 Latest Latest
Warning

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

Go to latest
Published: Feb 2, 2024 License: Apache-2.0 Imports: 0 Imported by: 0

Documentation

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

func Contains

func Contains[T comparable](src []T, dst T) bool

func ContainsFunc

func ContainsFunc[T interface{}](src []T, equal func(src T) bool) bool

ContainsFunc 判断 src 里面是否存在 dst 考虑优先使用 Contains

func DiffSet

func DiffSet[T comparable](src, dst []T) []T

DiffSet 差集,只支持 comparable 类型。已去重

Example
res := DiffSet[int]([]int{1, 2, 2, 3, 4}, []int{3, 4, 5, 6})
sort.Ints(res)
fmt.Println(res)
Output:
[1 2]

func DiffSetFunc

func DiffSetFunc[T interface{}](src, dst []T, equal equalFunc[T]) []T

DiffSetFunc 差集。已去重 优先使用 DiffSet

Example
res := DiffSetFunc[int]([]int{1, 3, 2, 2, 4}, []int{3, 4, 5, 6}, func(src, dst int) bool {
	return src == dst
})
fmt.Println(res)
Output:
[1 2]

func FilterMap

func FilterMap[Src interface{}, Dst interface{}](src []Src, m func(idx int, src Src) (Dst, bool)) []Dst

FilterMap 执行过滤并且转化 如果 m 的第二个返回值是 false ,那么我们会忽略第一个返回值

Example
src := []int{1, -2, 3}
dst := FilterMap[int, string](src, func(idx int, src int) (string, bool) {
	return strconv.Itoa(src), src >= 0
})
fmt.Println(dst)
Output:
[1 3]

func Map

func Map[Src interface{}, Dst interface{}](src []Src, m func(idx int, src Src) Dst) []Dst

Map 执行转化

Example
src := []int{1, 2, 3}
dst := Map[int, string](src, func(idx int, src int) string {
	return strconv.Itoa(src)
})
fmt.Println(dst)
Output:
[1 2 3]

Types

This section is empty.

Jump to

Keyboard shortcuts

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