猿问

java Arrays类中binarySearch方法的使用异常


package cn.itcast.UserfulClass17;

import java.util.Arrays;

public class ClassArray {

     public static void main(String[] args) {

             int[] arr = {35,1,20,32,45,5};

             int index = Arrays.binarySearch(arr,35);

            System.outprintln(index);// 得出的结果是 -5而不是0 ????

    	}

  }


夜千寻
浏览 1800回答 3
3回答

onemoo

二分查找算法要求数组必须是排序过的,否则结果是未定义的。

蒲公英wsg

使用二分搜索法来搜索指定的 byte 型数组,以获得指定的值。必须在进行此调用之前对数组进行排序(通过 sort(byte[]) 方法)。如果没有对数组进行排序,则结果是不确定的。如果数组包含多个带有指定值的元素,则无法保证找到的是哪一个。 
随时随地看视频慕课网APP

相关分类

Java
我要回答