1.Arrays.binarySearch不在默认库中,Arrays不在默认库中,需要
import java.util.Arrays;
进行把Arrays类导入。
2.二分查找的前提:数组的元素需要排序
3. binarySearch(Object[], Object key)
binarySearch(Object[], int fromIndex, int toIndex, Object key)
fromIndex:指定范围的开始处索引(包含)
toIndex:指定范围的结束处索引(不包含)
如果key在数组中,则返回搜索值的索引;否则返回-1或“-”(插入点)。插入点是索引键将要插入数组的那一点,即第一个大于该键的元素的索引。
技巧:
[1] 搜索值不是数组元素,且在数组范围内,从1开始计数,得“ - 插入点索引值”;
[2] 搜索值是数组元素,从0开始计数,得搜索值的索引值;
[3] 搜索值不是数组元素,且大于数组内元素,索引值为 – (length + 1);
[4] 搜索值不是数组元素,且小于数组内元素,索引值为 – 1。
4.