Binary Search with recursion in java

import java.util.*;
public class BinarySort {
public static int binary(int[] array,int low,int high,int key)

{
if(low<high)
{
int mid=low+high/2;
if(key>array[mid])
{
return binary( array, mid+1, high, key);

}
if(key<array[mid])
{
return binary( array, low, mid-1, key);

}
if(key==array[mid])
{
return mid;

}
}

return low;
}

public static void main(String[] agrs)
{

int[] array={1,4,5,2,3,6};
  Arrays.sort(array);
  System.out.println("Sort The first....\n\n "+ Arrays.toString(array));
int found=binary( array, 0, array.length, 4);
System.out.println("fourd number find at index number : " + found);
}

}