我需要合并一些范围.
我发现了番石榴,看到它可以在某些情况下处理它.
RangeSetrangeSet = TreeRangeSet.create(); rangeSet.add(Range.closed(1, 10)); // {[1, 10]} rangeSet.add(Range.closed(8, 15)); // {[1, 15]}
现在,我需要告诉番石榴我需要它[1, 10] + [11, 20] = {[1, 20]}
而不是{[1, 10], [11, 20]}
.
在某处可以选择吗?
如果你想要合并这样的范围,你需要首先规范化它们:
rangeSet.add(Range.closed(1, 10).canonical(DiscreteDomain.integers()); // {[1, 11)} rangeSet.add(Range.closed(11, 20).canonical(DiscreteDomain.integers()); // {[1, 21)}