最近我正在研究 Java中的数组,如果找到,我需要使用binarySearch(arr, v)Arrays 类中的方法来搜索数组中的值索引。varr然后我用一些不同的数组做一些测试。当我尝试在我发现4的数组中搜索值时。{4, 3, 2, 1}-5有人可以解释一下吗?你可以在这里查看http://tpcg.io/kibBmw代码如下:int[] arr = {4, 3, 2, 1};
System.out.println(Arrays.binarySearch(arr, 4));-5
3 回答
料青山看我应如是
TA贡献1772条经验 获得超8个赞
你应该Arrays.sort(arr);
在二分搜索之前做。从文档中Arrays.binarySearch
:
使用二进制搜索算法在指定的整数数组中搜索指定的值。在进行此调用之前,必须对数组进行排序(如通过 sort(int[]) 方法)。如果未排序,则结果未定义。
添加回答
举报
0/150
提交
取消