集合

由来: 由于数组满足不了变化的需求,于是java就给我们提供了另外一个容器,而这个容器内就是集合

 


数组和集合的区别:

* 长度的区别: 数组的长度是不可变的,不能自动增长,效率高,占用内存小;集合的长度是可变的,可以根据元素的增加而增长.

* 存储数据类型的区别: 数组可以存储基本数据类型的元素,也可以存储引用数据类型的元素 ; 而集合只能存储引用数据类型(对象)集合中也可以存储基本数据类型,但是在存储的时候会自动装箱变成对象

* 内容的区别: 数组只能存储同一种数据类型的元素 , 而集合可以存储多种数据类型的元素

 


数组和集合什么时候用

* 1,如果元素个数是固定的推荐用数组

* 2,如果元素个数不是固定的推荐用集合

 


集合的继承体系图

Collection

----> List 元素有序 , 每一个元素存在整数索引 , 可以存储重复元素

--> ArrayList 底层的数据结构是数组,查询快 , 增删慢 ; 线程不安全效率高

-->Vector 底层的数据结构是数组,查询快 , 增删慢 ; 线程安全, 效率低

-->LinkedList 底层的数据结构是链表,查询慢 , 增删快 ; 线程不安全效率高

----> Set 元素无序 , 每一个元素不存在整数索引 , 但是可以保证元素的唯一性

--> HashSet

--> TreeSet

posted on 2017-02-16 19:49  LoaderMan  阅读(128)  评论(0编辑  收藏  举报

导航