2 Star 0 Fork 0

ccait-dev/fast-api

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
arrayUtil.go 749 Bytes
一键复制 编辑 原始数据 按行查看 历史
草耑 提交于 2024-11-12 10:53 . release
package arrayUtil
import (
"reflect"
)
func Contains(arr interface{}, e interface{}) bool {
for _, a := range ToArray(arr) {
if a == e {
return true
}
}
return false
}
func ToArray(data interface{}) []interface{} {
// 使用反射获取数组的元素类型
arrValue := reflect.ValueOf(data)
if arrValue.Kind() != reflect.Array && arrValue.Kind() != reflect.Slice {
return nil
}
// 创建一个与原数组类型相同的空切片
arr := reflect.MakeSlice(reflect.TypeOf([]interface{}{}), 0, arrValue.Len())
for i := 0; i < arrValue.Len(); i++ {
arr = reflect.Append(arr, arrValue.Index(i))
}
// 将 interface{} 转换为 []interface{} 类型
interfaceArray := arr.Interface().([]interface{})
return interfaceArray
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/ccait-dev/fast-api.git
git@gitee.com:ccait-dev/fast-api.git
ccait-dev
fast-api
fast-api
v1.0.0

搜索帮助