public class ArrayTest{
public static void main(String[] args){
//二分法查找:
//前提:所要查找的数组必须有序。
//定义数组
int[] arr = new int[]{-98,-22,-20,1,2,3,20,29,32,100};
//要查找的值
int dest = -20;
int head = 0;//初始首索引
int end = arr.length - 1; //初始的末索引
boolean isFlag = true;
while(head <= end){
//中间索引
int middle = (head + end) / 2;
if(dest == arr[middle]){
System.out.println("找到了指定的元素位置为:" + middle);
isFlag = false;
break;
}else if(arr[middle] > dest){
end = middle - 1;
}else{
head = middle + 1;
}
}
if(isFlag){
System.out.println("很遗憾,没有找到哦");
}
}
}