How to search element in Long Array using Binary Search in Java?
Declaration :
1 |
public static int binarySearch(long[] a, long key) |
Explanation :
Purpose | The java.util.Arrays.binarySearch(long[] a long key) method searches the specified array of longs for the specified value using the binary search algorithm.The array must be sorted before making this call.If it is not sorted the results are undefined. |
Parameters | a ===> This is the array to be searched. |
key ===> This is the value to be searched for. | |
Return Value | This method returns index of the search key if it is contained in the array else it returns (-(insertion point) - 1). The insertion point is the point at which the key would be inserted into the array: the index of the first element greater than the key or a.length if all elements in the array are less than the specified key. |
Exception | NA |
Java Program : Example
Below example will explain java.util.Arrays.binarySearch() method.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
package com.c4learn; import java.util.Arrays; public class ArrayDemo { public static void main(String[] args) { // Initialize unsorted long array long arr[] = { 500, 200, 300, 100, 400 }; // Sorting array Arrays.sort(arr); // Printing the sorted long array System.out.println("The sorted long array is:"); for (long num : arr) { System.out.println("Array Element is " + num); } // Enter the value to be searched long Val = 400; int retVal = Arrays.binarySearch(arr, Val); System.out.println("The index of element 400 is : " + retVal); } } |
Output of Program :
1 2 3 4 5 6 7 |
The sorted long array is: Array Element is 100 Array Element is 200 Array Element is 300 Array Element is 400 Array Element is 500 The index of element 400 is : 3 |