import java.util.*;
public class Test{
public static void main(String[] args) {
List<Integer> list = new ArrayList<Integer>(20); for (int i = 0; i < 20; i++) {
list.add(i);
}
System.out.println(list);
Collections.shuffle(list); Integer[] data = list.toArray(new Integer[1]);
System.out.println(Arrays.toString(data));
for(int i=0;i<data.length;i++){
if(data[i].compareTo(8) == 0){
System.out.println("found it in: " + i);
}
}
int found = Arrays.binarySearch(data,8);
System.out.println(found);
}
}
今天练习写个二分查找的小程序,发现不能正常运行,就用类库中Arrays.binarySearch()方法测试,结果也是不正常?真奇怪,是我的JDK有问题吗?还是其它原因啊?
用binarySearch()方法 要先排序才能有正确结果!