import java.util.Arrays;
public class Erfen {
public static boolean shu(int[] arr,int target) {
boolean isExit = false;//初始认为输入值是不一样的
for(int i:arr) {
if (i==target) {
isExit = true;
break;
}
}
return isExit;//返回值给初始认为的变量
}
public static boolean chaZhao(int[] arr,int target) {
boolean isExit =false;
int mild = arr.length/2;
Arrays.sort(arr);
int left = 0;//left ,right的值为数组的下标
int right =arr.length-1;
while(left<right) {
if(arr[mild]<target) {
//中间值比与其比较的固定值小,则把左侧的值赋值给中间值
left = mild +1;//此时中间值比较过了,因此不必再比
mild =(left+right)/2;
}else if(arr[mild]>target) {
right = mild -1;
mild = (left +right)/2;
}else {
isExit = true;
//if--else语句:条件一,条件二都不满足,则输出这个
break;
}
}
return isExit;
}
public static void main(String[] args) {
int[] arr = new int[] {1,6,8,9,5};
System.out.println(chaZhao(arr,5)?"存在":"不存在");
//查找数组中是否有5;数值5为要判定的数
}
}