Package org.aoju.bus.core.lang.range
Class BoundedOperation
java.lang.Object
org.aoju.bus.core.lang.range.BoundedOperation
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic <T extends Comparable<? super T>>
BoundedRange<T> gap(BoundedRange<T> boundedRange, BoundedRange<T> other) 若other与当前区间不相连,则获得两区间中间的间隔部分static <T extends Comparable<? super T>>
BoundedRange<T> intersection(BoundedRange<T> boundedRange, BoundedRange<T> other) 若other与当前区间相交,则获得该区间与当前区间的交集static <T extends Comparable<? super T>>
booleanisDisjoint(BoundedRange<T> boundedRange, BoundedRange<T> other) boundedRange是否与other前区间不相交static <T extends Comparable<? super T>>
booleanisIntersected(BoundedRange<T> boundedRange, BoundedRange<T> other) boundedRange是否与other相交static <T extends Comparable<? super T>>
BoundedRange<T> span(BoundedRange<T> boundedRange, BoundedRange<T> other) 获得包含当前区间与指定区间的最小的区间static <T extends Comparable<? super T>>
BoundedRange<T> subAtLeast(BoundedRange<T> boundedRange, T min) 截取当前区间中大于等于min的部分,若min不在该区间中,则返回当前区间本身static <T extends Comparable<? super T>>
BoundedRange<T> subAtMost(BoundedRange<T> boundedRange, T max) 截取当前区间中小于等于max的部分,若max不在该区间中,则返回当前区间本身static <T extends Comparable<? super T>>
BoundedRange<T> subGreatThan(BoundedRange<T> boundedRange, T min) 截取当前区间中大于min的部分,若min不在该区间中,则返回当前区间本身static <T extends Comparable<? super T>>
BoundedRange<T> subLessThan(BoundedRange<T> boundedRange, T max) 截取当前区间中小于max的部分,若max不在该区间中,则返回当前区间本身static <T extends Comparable<? super T>>
BoundedRange<T> unionIfIntersected(BoundedRange<T> boundedRange, BoundedRange<T> other) 若other与当前区间相交,则将其与当前区间合并
-
Constructor Details
-
BoundedOperation
public BoundedOperation()
-
-
Method Details
-
unionIfIntersected
public static <T extends Comparable<? super T>> BoundedRange<T> unionIfIntersected(BoundedRange<T> boundedRange, BoundedRange<T> other) 若other与当前区间相交,则将其与当前区间合并- Type Parameters:
T- 可比较对象类型- Parameters:
boundedRange- 区间other- 另一个区间- Returns:
- 合并后的新区间,若两区间不相交则返回当前集合
-
span
public static <T extends Comparable<? super T>> BoundedRange<T> span(BoundedRange<T> boundedRange, BoundedRange<T> other) 获得包含当前区间与指定区间的最小的区间- Type Parameters:
T- 可比较对象类型- Parameters:
boundedRange- 区间other- 另一个区间- Returns:
- 包含当前区间与指定区间的最小的区间
-
gap
public static <T extends Comparable<? super T>> BoundedRange<T> gap(BoundedRange<T> boundedRange, BoundedRange<T> other) 若other与当前区间不相连,则获得两区间中间的间隔部分- Type Parameters:
T- 可比较对象类型- Parameters:
boundedRange- 区间other- 另一个区间- Returns:
- 代表间隔部分的区间,若两区间相交则返回
null
-
intersection
public static <T extends Comparable<? super T>> BoundedRange<T> intersection(BoundedRange<T> boundedRange, BoundedRange<T> other) 若other与当前区间相交,则获得该区间与当前区间的交集- Type Parameters:
T- 可比较对象类型- Parameters:
boundedRange- 区间other- 另一个区间- Returns:
- 代表交集的区间,若无交集则返回
null
-
subGreatThan
public static <T extends Comparable<? super T>> BoundedRange<T> subGreatThan(BoundedRange<T> boundedRange, T min) 截取当前区间中大于min的部分,若min不在该区间中,则返回当前区间本身- Type Parameters:
T- 可比较对象类型- Parameters:
boundedRange- 区间min- 最大的左值- Returns:
- 区间
-
subAtLeast
public static <T extends Comparable<? super T>> BoundedRange<T> subAtLeast(BoundedRange<T> boundedRange, T min) 截取当前区间中大于等于min的部分,若min不在该区间中,则返回当前区间本身- Type Parameters:
T- 可比较对象类型- Parameters:
boundedRange- 区间min- 最大的左值- Returns:
- 区间
-
subLessThan
public static <T extends Comparable<? super T>> BoundedRange<T> subLessThan(BoundedRange<T> boundedRange, T max) 截取当前区间中小于max的部分,若max不在该区间中,则返回当前区间本身- Type Parameters:
T- 可比较对象类型- Parameters:
boundedRange- 区间max- 最大的左值- Returns:
- 区间
-
subAtMost
public static <T extends Comparable<? super T>> BoundedRange<T> subAtMost(BoundedRange<T> boundedRange, T max) 截取当前区间中小于等于max的部分,若max不在该区间中,则返回当前区间本身- Type Parameters:
T- 可比较对象类型- Parameters:
boundedRange- 区间max- 最大的左值- Returns:
- 区间
-
isIntersected
public static <T extends Comparable<? super T>> boolean isIntersected(BoundedRange<T> boundedRange, BoundedRange<T> other) boundedRange是否与other相交- Type Parameters:
T- 可比较对象类型- Parameters:
boundedRange- 区间other- 另一个区间- Returns:
- 是否相交
-
isDisjoint
public static <T extends Comparable<? super T>> boolean isDisjoint(BoundedRange<T> boundedRange, BoundedRange<T> other) boundedRange是否与other前区间不相交- Type Parameters:
T- 可比较对象类型- Parameters:
boundedRange- 区间other- 另一个区间- Returns:
- 是否
-