github.com/gogf/gf@v1.16.9/.example/container/gset/gset2.go (about)

     1  package main
     2  
     3  import (
     4  	"fmt"
     5  
     6  	"github.com/gogf/gf/container/gset"
     7  	"github.com/gogf/gf/frame/g"
     8  )
     9  
    10  func main() {
    11  	s1 := gset.NewFrom(g.Slice{1, 2, 3})
    12  	s2 := gset.NewFrom(g.Slice{4, 5, 6})
    13  	s3 := gset.NewFrom(g.Slice{1, 2, 3, 4, 5, 6, 7})
    14  
    15  	// 交集
    16  	fmt.Println(s3.Intersect(s1).Slice())
    17  	// 差集
    18  	fmt.Println(s3.Diff(s1).Slice())
    19  	// 并集
    20  	fmt.Println(s1.Union(s2).Slice())
    21  	// 补集
    22  	fmt.Println(s1.Complement(s3).Slice())
    23  }