Java中List效率的比较
inkfish原创,请勿商业性质转载,转载请注明来源(http://blog.csdn.net/inkfish
)。
Java Collections Framework(JCF)
是Java SE中一个基本的类集,几乎所有的项目都会用到,其中的List
则是JCF中最最常用的一个接口。围绕List
接口,有很多实现,诸如常用的ArrayList
、LinkedList
、Vector
、Stack
,还有Java5之后引入的CopyOnWriteArrayList
,也有不少List
的开源实现,如Apache commons-collections中的各类List
。(来源:http://blog.csdn.net/inkfish)
这么多的List
实现,如何选择?他们的运行效率具体怎样?本篇文章将用具体的代码来检测其中最最常用的一些List
实现。(来源:http://blog.csdn.net/inkfish)
测试环境:
处理器:Intel Core 2 Duo P8600 2.4GHz
内存:2G
硬盘:160G 7200rpm
Java:SUN JDK 1.6.0_15
开发环境:Eclipse 3.5
第三方类库:Apache commons-lang 2.4、Apache commons-collections 3.2.1(来源:http://blog.csdn.net/inkfish)
主要测试对象:
java.util.ArrayList;
java.util.LinkedList;
java.util.Stack;
java.util.Vector;
java.util.concurrent.CopyOnWriteArrayList;
org.apache.commons.collections.FastArrayList;
org.apache.commons.collections.list.TreeList;
(来源:http://blog.csdn.net/inkfish)
测试用例:
1.测试List
1.1顺序添加
1.2随机插入
1.3随机删除
1.4随机访问
1.5随机更新
1.5顺序迭代
2.测试List
在三种情况下的排序效率
2.1初始时List
中元素已从小到大有序排列(最优情况)
2.2初始时List
中元素已从大到小有序排列(最差情况)
2.3初始时List
中元素随机排列,无序
3.测试List
互相转换的效率
3.1转化为TreeList
3.2转化为ArrayList
3.3转化为LinkedList
3.4转化为CopyOnWriteArrayList
3.5转化为Vector
(来源:http://blog.csdn.net/inkfish)
测试代码:
(来源:http://blog.csdn.net/inkfish)
package test;
import static java.lang.System.out;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.Stack;
im
相关文档:
Java中的方法调用中参数传递有两种,一个是对于参数是基本类型的使用的是值传递(直接传参数的值),另一个是引用传递,它是用于参数是类的对象,它传递的是这个对象的引用。
面向对象的思想anything is Object(万物皆对象)抽象,从对具体的对象中抽取有用信息。对象有其固有属性,对象的方法,即对象的行为(对象能做什 ......
暂时这样理解,希望大家指出我的错误
1.hashcode and equals:
equals如果用来判断两个对象的内容是否相同,需要重写,因为equals() 默认是比较两个对象的引用。
hashCode() 是用来产生哈希玛的,而哈希玛是用来在散列存储结构中确定对象的存储地址的,象util包中的 带 hash 的集合类都是用这种存储结构 ......
递归算法设计的基本思想是:对于一个复杂的问题,把原问题分解为若干个相对简单类同的子问题,继续下去直到子问题简单到能够直接求解,也就是说到了递推的出口,这样原问题就有递推得解。
关键要抓住的是:
(1)递归出口
(2)地推逐步向出口逼近
例子:
example: 求5的阶乘。。 & ......
1.FCKeditor 介绍
FCKeditor 这个开源的HTML 文本编辑器可以让web 程序拥有如MS Word 这样强大的编辑功能,.FCKeditor 支持当前流行的浏览器。
2.准备工作:
环境:winddows XP、tomcat6.0、JDK1.6
下载:
1):FCKeditor_2.6.4.zip
地址:http://nchc.dl.sourceforge.net/sourc...itor_2.6.4.zi ......