mirror of
https://gitee.com/dromara/mayfly-go
synced 2025-11-10 03:10:25 +08:00
feat: 使用标签替代项目
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
package utils
|
||||
|
||||
import "fmt"
|
||||
|
||||
// 数组比较
|
||||
// 依次返回,新增值,删除值,以及不变值
|
||||
func ArrayCompare(newArr []interface{}, oldArr []interface{}, compareFun func(interface{}, interface{}) bool) ([]interface{}, []interface{}, []interface{}) {
|
||||
@@ -19,10 +21,14 @@ func ArrayCompare(newArr []interface{}, oldArr []interface{}, compareFun func(in
|
||||
if compareFun(nv, ov) {
|
||||
unmodifierValue = append(unmodifierValue, nv)
|
||||
// 新数组移除该位置值
|
||||
newArr = append(newArr[:ni], newArr[ni+1:]...)
|
||||
oldArr = append(oldArr[:oi], oldArr[oi+1:]...)
|
||||
ni = ni - 1
|
||||
oi = oi - 1
|
||||
if len(newArr) > ni {
|
||||
newArr = append(newArr[:ni], newArr[ni+1:]...)
|
||||
ni = ni - 1
|
||||
}
|
||||
if len(oldArr) > oi {
|
||||
oldArr = append(oldArr[:oi], oldArr[oi+1:]...)
|
||||
oi = oi - 1
|
||||
}
|
||||
}
|
||||
oi = oi + 1
|
||||
}
|
||||
@@ -31,3 +37,16 @@ func ArrayCompare(newArr []interface{}, oldArr []interface{}, compareFun func(in
|
||||
|
||||
return newArr, oldArr, unmodifierValue
|
||||
}
|
||||
|
||||
type NumT interface {
|
||||
~int | ~int32 | ~uint64
|
||||
}
|
||||
|
||||
func NumberArr2StrArr[T NumT](numberArr []T) []string {
|
||||
strArr := make([]string, 0)
|
||||
for _, v := range numberArr {
|
||||
strArr = append(strArr, fmt.Sprintf("%d", v))
|
||||
}
|
||||
return strArr
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user