怎么用java判断一个int数组是否连续
废话不多说,直接上代码。
public static boolean getArr(int[] arr){
if (arr.length<3) {
return false;
}
boolean b = false;
for(int i =1;i<arr.length-1;i++){
if (arr[i]*2 != arr[i-1]+arr[i+1]) {
b = false;
break;
}
if (Math.abs(arr[i+1]-arr[i])!=1) {
b = false;
break;
}
if ((arr[i+1]-arr[i]) != (arr[i]-arr[i-1])) {
b = false;
break;
}
b =true ;
continue;
}
return b;
}
自我感觉写的良好。 思路是:1.先判断中间的值等于上下两边的值。如果不符合直接跳出循环返回false; 2.判断相邻两个值是否差为1,如果不符合跳出循环直接返回false;3.判断是不是等差数列,如果不符合跳出循环直接返回false;