for i 与 Iterator效率比较

看Collections.fill方法的实现

    public static <T> void fill(List<? super T> list, T obj) {
        int size = list.size();

        if (size < FILL_THRESHOLD || list instanceof RandomAccess) {
            for (int i=0; i<size; i++)
                list.set(i, obj);
        } else {
            ListIterator<? super T> itr = list.listIterator();
            for (int i=0; i<size; i++) {
                itr.next();
                itr.set(obj);
            }
        }
    }

可以看出来,for i从效率上来看应该比Iterator遍历效率慢。

猜你喜欢

转载自blog.csdn.net/u011385186/article/details/79100504
I