Map、List测试

来源:互联网 发布:铣削力计算软件 编辑:程序博客网 时间:2024/05/21 09:04
总结:存储数据量来说,HashMap比ArrayList少一个级别,HashMap可以存储到30万条数据,而ArrayList却可以存储到80万条数据,

并且获取数据的速度都是差不多,对于List中的另外一个LinkedList来说,这个读取速度稍微有点慢,跟ArrayList和HashMap来说,不在一个级别上。


package demo.csdn;import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import java.util.LinkedList;import java.util.Set;import java.util.Vector;/** * Map,List测试 *  *  * 总结:存储数据量来说,HashMap比ArrayList少一个级别,HashMap可以存储到30万条数据,而ArrayList却可以存储到80万条数据, * 并且获取数据的速度都是差不多 * ,对于List中的另外一个LinkedList来说,这个读取速度稍微有点慢,跟ArrayList和HashMap来说,不在一个级别上。 *  * @author Michael ku *  *         2015-4-30 下午8:24:42 */public class TestMap {public static void main(String[] args) {testListSecond();}static void testListSecond() {Vector<String> list = new Vector<String>();for (int index = 0; index < 10; index++) {list.add("index=" + index);}list.set(5, "element is ok");list.remove("index=4");list.add(1, "element");for (int in = 0; in < list.size(); in++) {p(list.get(in));}}static void testLinkedList() {LinkedList<String> linked = new LinkedList<String>();long start = System.currentTimeMillis();for (int in = 0; in < 300000; in++) {linked.add("key=" + in);}int size = linked.size();for (int in = 0; in < size; in++) {p(linked.get(in));}long end = System.currentTimeMillis();p((end - start));}static void testList() {ArrayList<String> array = new ArrayList<String>();for (int in = 0; in < 800000; in++) {array.add("key=" + in);}long start = System.currentTimeMillis();for (int in = 0; in < array.size(); in++) {p(array.get(in));}long end = System.currentTimeMillis();p((end - start));}static void testHashMap() {HashMap<Object, Object> map = new HashMap<Object, Object>();map.put(null, "this value is null");for (int in = 0; in < 300000; in++) {map.put("key" + in, "value is " + in);}long start = System.currentTimeMillis();Set<Object> sets = map.keySet();Iterator<Object> iterator = sets.iterator();while (iterator.hasNext()) {p(map.get(iterator.next()));}long end = System.currentTimeMillis();p((end - start));}static void p(Object value) {System.out.println("" + value);}}// end


0 0