java集合概述
集合和数组的区别
A:长度区别
数组固定
集合可变
B:内容区别
数组可以是基本类型,也可以是引用类型
集合只能是引用类型
C:元素内容
数组只能存储同一种类型
集合可以存储不同类型(实际使用中集合一般存储的也是同一种类型)
集合的继承体系
Collection
|--List
|--ArrayList
|--Vector
|--LinkedList
|--Set
|--HashSet
|--TreeSet
集合的遍历功能
1转成数组(toArray)
2使用迭代器(集合专用)
demo
//遍历集合c是一个集合对象
list<String> c = new ArrayList<String>();
//添加string代码省略
Iterator it = c.iterator(); while(it.hasNext()) { String s =(String) it.next(); System.out.println(s); }
总结
List的子类特点
ArrayList
底层数据结构是数组,查询快,增删慢。
线程不安全,效率高。
Vector
底层数据结构是数组,查询快,增删慢。
线程安全,效率低。
LinkedList
底层数据结构是链表,查询慢,增删快。
线程不安全,效率高。
到底使用谁呢?看需求?
分析:
要安全吗?
要:Vector(即使要,也不使用这个,后面再说)
不要:ArrayList或者LinkedList
查询多;ArrayList
增删多:LinkedList
什么都不知道,就用ArrayList。实际开发中,这个用的最多。
posted on 2016-06-20 22:09 一只小蜗牛12138 阅读(147) 评论(0) 编辑 收藏 举报