How to find an Element in an Array by Binary Search using Java

  1. import java.util.Scanner;  
  2.   
  3. class BinarySearch   
  4. {  
  5.     public static void main(String args[])   
  6.     {  
  7.         int count, num, element, array[], first, last, middle;  
  8.         //To capture user input  
  9.         Scanner input = new Scanner(System. in );  
  10.         System.out.println("Enter number of elements in array:");  
  11.         num = input.nextInt();  
  12.         //Creating array to store the all the numbers  
  13.         array = new int[num];  
  14.         System.out.println("Enter " + num + " integers:");  
  15.         //Loop to store each numbers in array  
  16.         for (count = 0; count < num; count++)  
  17.         array[count] = input.nextInt();  
  18.         System.out.println("Enter the element to be searched:");  
  19.         element = input.nextInt();  
  20.         first = 0;  
  21.         last = num - 1;  
  22.         middle = (first + last) / 2;  
  23.         while (first <= last)   
  24.         {  
  25.             if (array[middle] < element) first = middle + 1;  
  26.             else if (array[middle] == element)   
  27.             {  
  28.                 System.out.println("Element" + element + " found at location " + (middle + 1) + ".");  
  29.                 break;  
  30.             }   
  31.             else   
  32.             {  
  33.                 last = middle - 1;  
  34.             }  
  35.             middle = (first + last) / 2;  
  36.         }  
  37.         if (first > last)   
  38.             System.out.println("Element" + element + " doesn't exist in array :(\n");  
  39.     }  
  40. }  
Thank you, keep learning and sharing