为数据库组件铺路,超好用的 go 集合(collection)库来了

阅读: 评论:0

为数据库组件铺路,超好用的 go 集合(collection)库来了

为数据库组件铺路,超好用的 go 集合(collection)库来了

Goal-web/collection

这是一个神奇的仓库
goal-web/collection

安装 - install

go get github/goal-web/collection

使用

package testsimport ("errors""fmt""github/goal-web/collection""github/goal-web/contracts""github/shopspring/decimal""github/stretchr/testify/assert""testing"
)func TestNew(t *testing.T) {collect, err := collection.New(1)assert.Nil(t, collect)assert.Error(t, err, err)// 使用 MustNew 的时候,如果参数不是 array 或者 slice 的话,将会 paniccollect, err = collection.New([]int{1})assert.NotNil(t, collect)assert.Nil(t, err)
}func TestArray(t *testing.T) {intCollection := collection.MustNew([]interface{}{1, 2, 3, true, "字符串", "true",})fmt.Println(intCollection.ToFloat64Array())assert.True(t, intCollection.Len() == 6)// 第二个参数是数据索引intCollection.Map(func(data, index int) {fmt.Println(fmt.Sprintf("第 %d 个,值:%d", index, data))})// 第三个参数是所有数据集合intCollection.Map(func(data, index int, allData []interface{}) {if index == 0 {fmt.Println("allData", allData)}fmt.Println(fmt.Sprintf("第 %d 个,值:%d", index, data))})// 甚至可以直接转换成你想要的类型intCollection.Map(func(data string, index int) {fmt.Println(fmt.Sprintf("第 %d 个,值:%s", index, data))})intCollection.Map(func(data bool, index int) {fmt.Println(fmt.Sprintf("第 %d 个,值:%v", index, data))})// 不返回任何值表示只遍历intCollection.Map(func(data int) {fmt.Println("只遍历: ", data)})fmt.Println(intCollection.ToIntArray())// 返回一个值会生成一个新的 collectionfmt.Println(intCollection.Map(func(data int) int {if data > 0 {return 1}return 0}).ToIntArray())
}type User struct {id    intName  stringMoney float64
}func TestStructArray(t *testing.T) {users := collection.MustNew([]User{{id: 1, Name: "qbhy"},{id: 2, Name: "goal"},})users.Map(func(user User) {fmt.Printf(

本文发布于:2024-02-04 21:28:12,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170716834759774.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:来了   好用   组件   数据库   collection
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23