在数组中查找一个对象,当数组是有序的时候可以采用二分查找法。即可以直接查看位于数组中间的元素,看一看是否大于查找的元素。
如果大于,用同样的方法在数组的前半部分继续查找;否则用同样的方法在数组的后半部分继续查找。这样就可以将查找范围缩减一半。
Collections类的binarySeacrch方法实现了这个算法。
【注】集合必须是排好序的,没有排好序的要提供一个比较器对象。
public class BinarySearchTest {
public static void main(String[] args) {
List<Integer> list=new ArrayList<Integer>();
list.add(2);list.add(9);list.add(4);list.add(3);list.