最近新上手了Java,学习的过程中发现在binarySearch()方法中有点地方不明,so~google了一下。
binarySearch()方法的返回值有两种情况:1、如果找到关键字,则返回值为关键字在数组中的位置索引,且索引从0开始; 2、如果没有找到关键字,返回值为负的插入点值,插入点值就是第一个比关键字大的元素在数组中的位置索引
,而且这个位置索引从1开始
。
注:调用binarySearch()方法前要先调用sort方法对数组进行排序,否则得出的返回值不定,这是二分搜索算法决定的。
如下一个小例
运行结果为