当前位置:   article > 正文

JAVA Arrays.binarySearch

java arrays.binarysearch

Arrays.binarySearch(array, key) 作用:查询元素值key在数组array中的下标 (要求数组中元素已经按升序排列)

  1. int[] arr11 = { 10, 50, 40, 30 };
  2. Arrays.sort(arr11);
  3. // int aa = Arrays.binarySearch(arr11, 30); //1
  4. int aa = Arrays.binarySearch(arr11, 20); //-2
  5. System.out.println(aa);

查看JDK API 才知道:

binarySearch

public static int binarySearch(byte[] a,
                               byte key)
使用二分搜索法来搜索指定的 byte 型数组,以获得指定的值。必须在进行此调用之前对数组进行排序(通过 sort(byte[]) 方法)。如果没有对数组进行排序,则结果是不确定的。如果数组包含多个带有指定值的元素,则无法保证找到的是哪一个。
参数:
a - 要搜索的数组
key - 要搜索的值

    如果数组a中如果没有key,则返回值为某个负值,表示为了保持排序状态,此目标元素应该插入的位置“-(插入点)-1”;


    如果找到了key,则返回key所在元素下标。


    插入点是指,第一个大于查找对象的元素在数组中的位置,如果数组所有元素都小于要查找的对象,插入点就等于a.size().

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号