A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 晨若兰曦 中级黑马   /  2014-12-29 21:56  /  835 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

public class CollectionsDemo {
        public static void main(String[] args) {
                binarySearch();
        }

        public static void binarySearch() {
                List<String> list = new ArrayList<String>();
                list.add("abfn");
                list.add("aaaa");
                list.add("aaaa");
                list.add("bhfe");
                Collections.sort(list);
                sop(list);
                int index = Collections.binarySearch(list, "aaaa");
                sop("index=" + index);

        }
为什么打印aaaa的角标是1,而不是0呢?

2 个回复

倒序浏览
1 2 3 4二分查找时先找哪个,一种可能是(1+4)/2=2,就是第二个,就是脚标1了
回复 使用道具 举报
二分查找的缘故吧?
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马