Binary search an Array

static int binarySearch(byte[] a, byte key)
Searches the specified array of bytes for the specified value using the binary search algorithm.
static int binarySearch(byte[] a, int fromIndex, int toIndex, byte key)
Searches a range of the specified array of bytes for the specified value using the binary search algorithm.
static int binarySearch(char[] a, char key)
Searches the specified array of chars for the specified value using the binary search algorithm.
static int binarySearch(char[] a, int fromIndex, int toIndex, char key)
Searches a range of the specified array of chars for the specified value using the binary search algorithm.
static int binarySearch(double[] a, double key)
Searches the specified array of doubles for the specified value using the binary search algorithm.
static int binarySearch(double[] a, int fromIndex, int toIndex, double key)
Searches a range of the specified array of doubles for the specified value using the binary search algorithm.
static int binarySearch(float[] a, float key)
Searches the specified array of floats for the specified value using the binary search algorithm.
static int binarySearch(float[] a, int fromIndex, int toIndex, float key)
Searches a range of the specified array of floats for the specified value using the binary search algorithm.
static int binarySearch(int[] a, int key)
Searches the specified array of ints for the specified value using the binary search algorithm.
static int binarySearch(int[] a, int fromIndex, int toIndex, int key)
Searches a range of the specified array of ints for the specified value using the binary search algorithm.
static int binarySearch(long[] a, int fromIndex, int toIndex, long key)
Searches a range of the specified array of longs for the specified value using the binary search algorithm.
static int binarySearch(long[] a, long key)
Searches the specified array of longs for the specified value using the binary search algorithm.
static int binarySearch(Object[] a, int fromIndex, int toIndex, Object key)
Searches a range of the specified array for the specified object using the binary search algorithm.
static int binarySearch(Object[] a, Object key)
Searches the specified array for the specified object using the binary search algorithm.
static int binarySearch(short[] a, int fromIndex, int toIndex, short key)
Searches a range of the specified array of shorts for the specified value using the binary search algorithm.
static int binarySearch(short[] a, short key)
Searches the specified array of shorts for the specified value using the binary search algorithm.
static<T> int binarySearch(T[] a, int fromIndex, int toIndex, T key, Comparator<? super T> c)
Searches a range of the specified array for the specified object using the binary search algorithm.
static<T> int binarySearch(T[] a, T key, Comparator<? super T> c)
Searches the specified array for the specified object using the binary search algorithm.

  import java.util.Arrays;

public class Main{
  public static void main(String args[]) {
    int array[] = new int[10];
    for (int i = 0; i < 10; i++){
      array[i] = -3 * i;
    }
    System.out.print("Original contents: ");
    System.out.println(Arrays.toString(array));
    Arrays.sort(array);
    System.out.print("Sorted: ");
    System.out.println(Arrays.toString(array));
  
    System.out.print("The value -9 is at location ");
    int index = Arrays.binarySearch(array, -9);
    System.out.println(index);
  }
  
}
  

The output:


Original contents: [0, -3, -6, -9, -12, -15, -18, -21, -24, -27]
Sorted: [-27, -24, -21, -18, -15, -12, -9, -6, -3, 0]
The value -9 is at location 6

Performing Binary Search on byte Array


import java.util.Arrays;

public class Main {
  public static void main(String[] args) {
    byte bArray[] = {1, 2, 3, 4, 5};
    Arrays.sort(bArray);
    byte searchValue = 2;
    int intResult = Arrays.binarySearch(bArray, searchValue);
    System.out.println("Result of binary search of 2 is : " + intResult);
    searchValue = 3;
    intResult = Arrays.binarySearch(bArray, searchValue);
    System.out.println("Result of binary search of 3 is : " + intResult);
  }
}

The output:


Result of binary search of 2 is : 1
Result of binary search of 3 is : 2

Performing Binary Search on char Array


import java.util.Arrays;

public class Main {
  public static void main(String[] args) {
    char charArray[] = {'a', 'b', 'd', 'e'};
    Arrays.sort(charArray);
    char searchValue = 'b';
    int intResult = Arrays.binarySearch(charArray, searchValue);
    System.out.println("Result of binary search of 'b' is : " + intResult);
    searchValue = 'c';
    intResult = Arrays.binarySearch(charArray, searchValue);
    System.out.println("Result of binary search of 'c' is : " + intResult);
  }
}

The output:


Result of binary search of 'b' is : 1
Result of binary search of 'c' is : -3

Performing Binary Search on Java double Array Example


import java.util.Arrays;

public class Main {
  public static void main(String[] args) {
    double doubleArray[] = {1.2, 2.10, 4.4, 5.4};
    Arrays.sort(doubleArray);
    double searchValue = 4.4;
    int intResult = Arrays.binarySearch(doubleArray, searchValue);
    System.out.println("Result of binary search of 4.74 is : " + intResult);
    searchValue = 3.33;
    intResult = Arrays.binarySearch(doubleArray, searchValue);
    System.out.println("Result of binary search of 3.33 is : " + intResult);
  }
}

The output:


Result of binary search of 4.74 is : 2
Result of binary search of 3.33 is : -3

Performing Binary Search on Java float Array Example


import java.util.Arrays;

public class Main {
  public static void main(String[] args) {
    float floatArray[] = {1.3f, 2.2f, 4.4f, 5.4f};
    Arrays.sort(floatArray);
    float searchValue = 4.4f;
    int intResult = Arrays.binarySearch(floatArray, searchValue);
    System.out.println("Result of binary search of 4.4 is : " + intResult);
    searchValue = 3.33f;
    intResult = Arrays.binarySearch(floatArray, searchValue);
    System.out.println("Result of binary search of 3.33 is : " + intResult);
  }
}

The output:


Result of binary search of 4.4 is : 2
Result of binary search of 3.33 is : -3

Performing Binary Search on Java long Array Example


import java.util.Arrays;

public class Main {
  public static void main(String[] args) {
    long longArray[] = {1, 2, 3, 4, 5};
    Arrays.sort(longArray);
    long searchValue = 2;
    long intResult = Arrays.binarySearch(longArray, searchValue);
    System.out.println("Result of binary search of 2 is : " + intResult);
    searchValue = 3;
    intResult = Arrays.binarySearch(longArray, searchValue);
    System.out.println("Result of binary search of 3 is : " + intResult);
  }
}

The output:


Result of binary search of 2 is : 1
Result of binary search of 3 is : 2

Performing Binary Search on Java short Array


import java.util.Arrays;

public class Main {
  public static void main(String[] args) {
    short shortArray[] = {1, 2, 3, 4, 5};
    Arrays.sort(shortArray);
    short searchValue = 2;
    int intResult = Arrays.binarySearch(shortArray, searchValue);
    System.out.println("Result of binary search of 2 is : " + intResult);
    searchValue = 3;
    intResult = Arrays.binarySearch(shortArray, searchValue);
    System.out.println("Result of binary search of 3 is : " + intResult);
  }
}

The output:


Result of binary search of 2 is : 1
Result of binary search of 3 is : 2
Home 
  Java Book 
    Collection  

Arrays:
  1. Arrays
  2. Convert array to list
  3. Binary search an Array
  4. Deep to string
  5. Compare two arrays
  6. Fill value to array
  7. Sort an array
  8. Convert array to string