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