欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

GoFrame框架gset交差并補(bǔ)集使用實(shí)例

 更新時(shí)間:2022年06月11日 11:52:15   作者:王中陽(yáng)Go  
這篇文章主要為大家介紹了GoFrame框架gset交差并補(bǔ)集使用實(shí)例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

上一篇文章:GoFrame gset使用入門 | 對(duì)比PHP、Java、Redis 得到了大家不錯(cuò)的反饋,今天繼續(xù)為大哥分享gset的更多知識(shí)點(diǎn)。

使用場(chǎng)景方法介紹

交差并補(bǔ)集有非常多的應(yīng)用場(chǎng)景,合理的使用交差并補(bǔ)集能減少我們的DB查詢次數(shù)。

Intersect: 交集

交集,屬于set且屬于others的元素為元素的集合。

func (set *Set) Intersect(others ...*Set) (newSet *Set)

Diff: 差集

Diff: 差集,屬于set且不屬于others的元素為元素的集合。

func (set *Set) Diff(others ...*Set) (newSet *Set)

Union: 并集

Union: 并集,屬于set或?qū)儆趏thers的元素為元素的集合。

func (set *Set) Union(others ...*Set) (newSet *Set)

Complement: 補(bǔ)集

Complement: 補(bǔ)集,(前提: set應(yīng)當(dāng)為full的子集)屬于全集full不屬于集合set的元素組成的集合。如果給定的full集合不是set的全集時(shí),返回full與set的差集。

func (set *Set) Complement(full *Set) (newSet *Set)

注意:通過(guò)集合方法中的...我們可以發(fā)現(xiàn),交差并集方法支持多個(gè)集合參數(shù)進(jìn)行計(jì)算。

舉例

package main
import (
   "fmt"
   "github.com/gogf/gf/container/gset"
)
func main() {
   s1 := gset.NewFrom([]interface{}{1, 2, 3})
   s2 := gset.NewFrom([]interface{}{4, 5, 6})
   s3 := gset.NewFrom([]interface{}{1, 2, 3, 4, 5, 6, 7})
   fmt.Println("s1和s3的交集:", s1.Intersect(s3)) //s1和s3的交集:"[1,2,3]"
   fmt.Println("s1和s2的差集:", s1.Diff(s2)) //s1和s2的差集:"[2,3,1]"
   fmt.Println("s1和s2的并集:", s1.Union(s2)) //s1和s2的并集:"[3,1,4,5,6,2]"
   fmt.Println("s1和s3的補(bǔ)集:", s1.Complement(s3)) //s1和s3的補(bǔ)集:"[4,5,6,7]"
}

打印結(jié)果

總結(jié)

通過(guò)這篇文章我們了解到gset數(shù)據(jù)結(jié)構(gòu)交差并補(bǔ)集的基本使用

交差并集方法是支持多個(gè)集合參數(shù)進(jìn)行計(jì)算的

合理使用交差并補(bǔ)集能較少DB查詢次數(shù),提高程序整體響應(yīng)速度。

更多關(guān)于GoFrame gset交差并補(bǔ)集的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論