initial commit
This commit is contained in:
20
pkg/array/find.go
Normal file
20
pkg/array/find.go
Normal file
@@ -0,0 +1,20 @@
|
||||
package array
|
||||
|
||||
func Find[TIn any](arr []TIn, predicate func(val TIn) bool) *TIn {
|
||||
for i := range arr {
|
||||
if predicate(arr[i]) {
|
||||
return &arr[i]
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func Filter[TIn any](arr []TIn, predicate func(val *TIn) bool) []TIn {
|
||||
var r []TIn
|
||||
for i := range arr {
|
||||
if predicate(&arr[i]) {
|
||||
r = append(r, arr[i])
|
||||
}
|
||||
}
|
||||
return r
|
||||
}
|
||||
Reference in New Issue
Block a user