以下常用方法列表,文档更新可能滞后于代码新特性,更多的方法及示例请参考代码文档: https://pkg.go.dev/github.com/gogf/gf/v2/container/gset
这里以 StrSet
类型介绍方法使用,其他集合类型的方法与此 类似,不再赘述。
NewStrSet
- 说明:
NewStrSet
创建并返回一个空的集合,其中包含没有重复字符串的数据。参数safe
用于指定是否在并发安全中使用,默认情况下是false
。 - 格式:
func NewStrSet(safe ...bool) *StrSet
- 示例:
func ExampleNewStrSet() {
strSet := gset.NewStrSet(true)
strSet.Add([]string{"str1", "str2", "str3"}...)
fmt.Println(strSet.Slice())
// May Output:
// [str3 str1 str2]
}
NewStrSetFrom
- 说明:
NewStrSetFrom
通过给定的数组创建集合集合。参数safe
用于指定是否在并发安全中使用,默认情况下是false
。 - 格式:
func NewStrSetFrom(items []string, safe ...bool) *StrSet
- 示例:
func ExampleNewStrSetFrom() {
strSet := gset.NewStrSetFrom([]string{"str1", "str2", "str3"}, true)
fmt.Println(strSet.Slice())
// May Output:
// [str1 str2 str3]
}
Add
- 说明:
Add
添加一个或多个元素项到集合中。 - 格式:
func (set *StrSet) Add(item ...string)
- 示例:
func ExampleStrSet_Add() {
strSet := gset.NewStrSetFrom([]string{"str1", "str2", "str3"}, true)
strSet.Add("str")
fmt.Println(strSet.Slice())
fmt.Println(strSet.AddIfNotExist("str"))
// Mya Output:
// [str str1 str2 str3]
// false
}
AddIfNotExist
- 说明:
Addifnotexist
检查集合中是否存在指定元素项item
,如果不存在则将item
添加到集合中并返回true
,否则什么也不做并返回false
。 - 格式:
func (set *StrSet) AddIfNotExist(item string) bool