乐趣区

collection-封装map与slice提升golang开发效率

golang 的数组与 map 缺少像 php 一样很多的系统 api 的支持,使得诸如像获取 map 中所有 key 或者打乱数组等这些操作都需要自己写一个 api。而此时 collection 应运而生,collection 是一个数据结构可以很轻易的跟 map 和 slice 自由转换。collection 几乎包括了你开发所需要的各种 api 操作,php 有的都会有。

对 map 数组的支持使得你可以对数据库查来的数据进行诸如 where 查询,筛选乃至于修改等操作。极大的提升了你的 golang 开发效率。而且 collection 致力于提供优雅的便捷的且健壮 api,使得你开发的代码十分简洁易于维护。

项目地址:https://github.com/chenhg5/co…
文档地址:https://godoc.org/github.com/…

开发不易,如若觉得有用,欢迎 star,欢迎 pr

使用例子

获取 map 的所有 key


a := map[string]interface{}{
        "name": "mike",
        "sex":  1,
    }

fmt.Println(Collect(a).Keys().ToStringArray())

// Output: []string{"name", "sex"}

数组排序


a := []int{4, 5, 2, 3, 6, 7}

fmt.Println(Collect(a).Sort().ToIntArray())

// Output: []int{2, 3, 4, 5, 6, 7}

数组打乱


a := []int{4, 5, 2, 3, 6, 7}

fmt.Println(Collect(a). Shuffle().ToIntArray())

// Output: []int{ 3, 2, 5, 4, 6, 7}

更多例子在这里

退出移动版