import java.util.*;
class kl{
public static void main(String arg[]){
List list=new ArrayList();
list.clear();
list.add("b");
list.add("a");
list.add("c");
System.out.println(Collections.binarySearch(list,"a"));

}
}

解决方案 »

  1.   

    java 交流群:36468871  高手请进!
      

  2.   

    在进行此调用之前,必须根据列表元素的自然顺序 对列表进行升序排序(通过上面的 sort(List) 方法)。如果没有对列表进行排序,则结果是不明确的。如果列表包含多个等于指定对象的元素,则无法保证找到的是哪一个。
      

  3.   

    binarySearch
    一看就是二分查找法:
    二分查找法的必要条件就是“顺序排列”。大家得到的结果不一样,可能和jdk的版本有关。
      

  4.   

    F:\javaclass\csdn>javac kl.java
    注意:kl.java 使用了未经检查或不安全的操作。
    注意:要了解详细信息,请使用 -Xlint:unchecked 重新编译。
    我的是最新版jdk1.6的,出现这种情况