判断两个数组是否存在交集
使用场景:代码:@Slf4jpublic class UserSetGroupRangMatcheUtil { /** * 判断两个数组是否存在交集 * a最大值< b最大
使用场景:
代码:
@Slf4j
public class DateRangMatcheUtil {
/**
* 判断两个数组是否存在交集
* a最大值< b最大值 true
* a最大值 > b最大值
* a的最小值< b最大值 false
* a的最小值 > b的最大值 true
* <p>
* a的最大值=b的最大值 false
* a的最大值=b的最小值false
* a的最小值=b的最大值 false
* a的最小值=b的最小值 false
*
* @param param param
* @param comparableParam db
* @return
*/
public static boolean isIntervalOverlap(Integer[] param, Integer[] comparableParam) {
if (null == param || comparableParam == null) {
throw new RuntimeException("区间范围必须包含至少1个值以上");
}
Arrays.sort(param);
Arrays.sort(comparableParam);
int aStart = param[0];
int aEnd = param[param.length - 1];
int bStart = comparableParam[0];
int bEnd = comparableParam[param.length - 1];
if (aStart == bStart) {
return true;
}
if (aStart == bEnd) {
return true;
}
if (aEnd == bStart) {
return true;
}
if (aEnd == bEnd) {
return true;
}
// Integer[] param = new Integer [] {1,4};
// Integer[] comparableParam = 原创不易,完成人机校验,阅读全文