摘要: ArrayList类是java集合框架出现之后取代Vector类的 二者底层原理都是基于数组的算法,一模一样。 区别: Vector:所有的方法都使用了synchronize修饰符 线程安全但是性能较低,适用于多线程环境。 ArrayList:所有的方法都没使用synchronize修饰符 线程不安 阅读全文
posted @ 2017-03-17 17:24 wenxudong 阅读(227) 评论(0) 推荐(0) 编辑
摘要: 栈(Stack):数据结构的一种存储特点先进后出 官方建议:使用栈尽量使用Deque接口及其实现提供了LIFO堆栈操作的更完整和一致的set,应该优先使用此set,而非此类。 例如:Deque<Integer> stack = new ArrayDeque<Integer>(); 阅读全文
posted @ 2017-03-17 16:52 wenxudong 阅读(396) 评论(0) 推荐(0) 编辑
摘要: 在JDK2之前(在Java集合框架之前),要存储多个数据,此时存在一个叫Vector类。 Vector类底层其实就是一个Object数组,Vector类中的方法是支持同步(方法使用 synchronized修饰)的。 Vector类设计原理:查看源代码 Vector类存储原理: 通过源码分析,发现V 阅读全文
posted @ 2017-03-17 16:39 wenxudong 阅读(633) 评论(0) 推荐(0) 编辑
摘要: Java集合框架的由来: 其实在Java2之前,Java是没有完整的集合框架的。他只有一些简单的可以自扩展的容器类,比如Vector,Stack,Hashtable等。 为什么存在容器类:容器类(集合类)可以存储多个数据,既然数组可以存储多个数据,为什么需要定义容器类 数组的弊端: 1.长度是不可变 阅读全文
posted @ 2017-03-17 15:33 wenxudong 阅读(744) 评论(0) 推荐(0) 编辑