Collection知识点总结

1.Collection是什么?有什么方法?

  集合是存储多个元素的容器。单列集合每次存取都是一个元素。
  Collection是单列集合顶层接口。
  定义了所有单列集合通用方法。
    public boolean add(E e) 添加对象到集合中
    public void clear()  清空集合
    public boolean remove(E e) 删除指定对象
    public boolean contains(Object obj) 判断当前集合中是否包含给定的对象
    public boolean isEmpty() 判断当前集合是否为空
    public int size() 返回集合中元素的个数
    public Object[] toArray()  把集合中的元素,存储到数组中

2.Collection遍历方式

      迭代器
      增强for
      forEach--lambda

3.Collection两个子接口特点 

  List集合: 有序,有索引,元素可以重复。
  Set集合:  唯一,无序,没索引。
  有序:存取顺序一致。
  无序:不保证存取顺序一致。
  

4.List集合常用的子类有哪些?

  ArrayList 
  LinkedList
  Vector  (不常用,已淘汰)

5.ArrayList集合有什么特点?

  底层是数组结构,是连续的空间。
  查询快,增删慢。

6.ArrayList集合存储元素的原理你知道吗?

 底层是数组结构。
 ①利用无参构造创建一个集合对象,底层是一个默认的空数组。
 ②执行add方法,添加第一个元素,会创建一个长度为10的数组,把元素存进去。
 ③添加长度超过10的时候,默认进行扩容,扩容原数组长度的1.5倍。
 ④如果一次添加的长度超过了1.5倍,这个时候以实际长度为主(原数组长度+新的元素个数)。

7.LinkedList集合有什么特点?

  底层是双向链表,由结点组成。
  查询慢,增删相对快。尤其它里面对首尾结点更加快。

8.ArrayList集合适合什么场景? 主要适合大量查询的时候

  LinkedList集合适合什么场景?主要适合频繁进行增删的时候。
   特点 用来设计 队列 和 栈。  
  

9.队列结构特点及栈结构特点?

   队列:先进先出FIFO。
   栈:先进后出FILO。

你可能感兴趣的:(java,开发语言,jvm)