collection与collections
Collection 是一个集合接口,它提供了对集合对象进行基本操作的通用接口方法,所有集合都是它的子类,比如 List、Set 等。
Collections 是一个包装类,包含了很多静态方法,不能被实例化,就像一个工具类,比如提供的排序方法: Collections. sort(list)。
java里面的容器分两大类,Map和Collection
queue详细分析:
PriorityQueue的本质
PriorityQueue 本质也是一个动态数组,在这一方面与ArrayList是一致的。
PriorityQueue调用默认的构造方法时,使用默认的初始容量(DEFAULT_INITIAL_CAPACITY=11
)创建一个 PriorityQueue,并根据其自然顺序来排序其元素(使用加入其中的集合元素实现的Comparable)。
https://www.cnblogs.com/lemon-flm/p/7877898.html
ArrayList,Vector,LinkedList比较
(1)如果需要遍历集合,ArrayList和Vector通过随机访问的方式比较好,LinkedList通过迭代器的方式比较好;
(2)需要经常执行插入、删除操作时,使用LinkedList比较好,因为他用链表实现,ArrayList和Vector内部会扩容动态分配大小,耗费时间;
(3)需要线程安全,考虑使用Vector。