QueryRange
方法 · SortedVersionGroups
go
func (x *SortedVersionGroups) QueryRange(start, end *tuple.Tuple2[*Version, ContainsPolicy]) []*Version📖 说明
QueryRange 在有序版本组中查询指定范围内的版本
该方法根据给定的起始和结束版本范围,返回所有符合条件的版本对象数组。 方法利用预排序的版本组结构,快速定位并收集符合范围条件的版本。
参数
start:包含起始版本和包含策略的元组end:包含结束版本和包含策略的元组
返回
[]*Version:符合查询范围条件的版本对象数组
go
// 创建已排序的版本组
sortedGroups := versions.NewSortedVersionGroups(allVersions)
// 定义查询范围
startVer := versions.NewVersion("1.0.0")
endVer := versions.NewVersion("2.0.0")
startTuple := tuple.NewTuple2(startVer, versions.ContainsPolicyYes) // 包含1.0.0
endTuple := tuple.NewTuple2(endVer, versions.ContainsPolicyNo) // 不包含2.0.0
// 执行范围查询
rangeResult := sortedGroups.QueryRange(startTuple, endTuple)
fmt.Printf("在范围内的版本数: %d\n", len(rangeResult))🔗 同类方法
SortedVersionGroups.GroupIDsSortedVersionGroups.LenSortedVersionGroups.GetSortedVersionGroups.AtSortedVersionGroups.ContainsSortedVersionGroups.Versions