1 //要找的数 - 数组中的第一个元素 / 最大的数 - 第一个元素 2 //数组的查找(线性查找 二分法查找) 3 //线性查找: 4 //equals 5 6 String dest = "BB"; 7 boolean isFlag = true; 8 9 for(int i = 0; i <arr.length;i++) 10 { 11 if(dest.equals(arr[i])) 12 { 13 System.out.println("找到了指定的元素,位置为:"+ i); 14 isFlag = false; 15 break; 16 } 17 } 18 19 if(isFlag) 20 { 21 System.out.println("没找到!"); 22 } 23 24 //二分法查找 25 //前提要有序的数组 26 27 int[] num = new int[]{-98, 45,69,87,99,106,253,630,789,999}; 28 int dest1 = 69; 29 int head = 0; //初始首索引 30 int end = num.length - 1; //初始末索引 31 boolean isFlag1= true; 32 33 while(head <= end) 34 { 35 int middle = (head + end) /2; //中间值 36 if(dest1 == num[middle]) 37 { 38 System.out.println("找到了指定的元素,位置为:" + middle); 39 isFlag1 = false; 40 break; 41 } 42 else if(num[middle]>dest1) 43 { 44 end = middle -1; 45 } 46 else //num[middle] < dest1 47 { 48 head = middle +1; 49 } 50 } 51 if(isFlag1) 52 { 53 System.out.println("没有找到!"); 54 } 55 56 57 58 59 60 61 62 } 63