Java Arrays.binarySearch无法正常工作

Java Arrays.binarySearch无法正常工作,java,arrays,binary-search,Java,Arrays,Binary Search,我有字符串数组[1,2,3],我使用array.binarySearch搜索所有这些数字,它会找到1和2,但使用3返回-1。知道为什么会这样吗?除了在数组/集合中始终工作搜索,还有什么更好的选择?必须对数组进行排序 String []ar={"1","2","3"}; System.out.println(java.util.Arrays.binarySearch(ar,"3")); 必须对数组进行排序 String []ar={"1","2","3"}; Syst

我有字符串数组[1,2,3],我使用array.binarySearch搜索所有这些数字,它会找到1和2,但使用3返回-1。知道为什么会这样吗?除了在数组/集合中始终工作搜索,还有什么更好的选择?

必须对数组进行排序

   String []ar={"1","2","3"};
   System.out.println(java.util.Arrays.binarySearch(ar,"3"));  

必须对数组进行排序

   String []ar={"1","2","3"};
   System.out.println(java.util.Arrays.binarySearch(ar,"3"));