代码拉取完成,页面将自动刷新
package slicex
type Slice[T any, ReturnType any] []T
func (s Slice[T, ReturnType]) Map(mapFunc func(T) ReturnType) []ReturnType {
r := make([]ReturnType, 0)
for _, e := range s {
value := mapFunc(e)
r = append(r, value)
}
return r
}
func Map[SourceType, ReturnType any](source []SourceType, mapFunc func(SourceType) ReturnType) []ReturnType {
r := make([]ReturnType, 0)
for _, e := range source {
value := mapFunc(e)
r = append(r, value)
}
return r
}
func Filter[SourceType any](source []SourceType, filter func(s SourceType) bool) []SourceType {
r := make([]SourceType, 0)
for _, e := range source {
if filter(e) {
r = append(r, e)
}
}
return r
}
func Reduce[T comparable, Source any](initVal T, reducer func(val T, v Source) T, source []Source) T {
for _, e := range source {
initVal = reducer(initVal, e)
}
return initVal
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。