arrayList与hashmap的区别
来源:互联网 发布:单片机呼吸灯原理 编辑:程序博客网 时间:2024/05/22 00:55
http://blog.csdn.net/qiulongtianshi/article/details/8146717
ArrayList和HashMap是异步的,Vector和HashTable是同步的,所以Vector和HashTable是线程安全的,而 ArrayList和HashMap并不是线程安全的。因为同步需要花费机器时间,所以Vector和HashTable的执行效率要低于 ArrayList和HashMap。
List接口
List是有序的Collection,使用此接口能够精确的控制每个元素插入的位置。用户能够使用索引(元素在List中的位置,类似于数组下标)来访问List中的元素,这类似于Java的数组。
Map接口
请注意,Map没有继承Collection接口,Map提供key到value的映射。一个Map中不能包含相同的key,每个key只能映射一个 value。
HashSet : 为快速查找设计的Set。存入HashSet的对象必须定义hashCode()。
果说查找的话肯定是HashMap的效率高些嘛,因为它是散列存储的,而ArrayList是顺序存储的
执行效率是Map的一个大问题。看看get()要做哪些事,就会明白为什么在ArrayList中搜索“键”是相当慢的。而这正是HashMap提高速度的地方。HashMap使用了特殊的值,称为“散列码”(hash code),来取代对键的缓慢搜索。“散列码”是“相对唯一”用以代表对象的int值,它是通过将该对象的某些信息进行转换而生成的。所有Java对象都能产生散列码,因为hashCode()是定义在基类Object中的方法。
HashMap就是使用对象的hashCode()进行快速查询的。此方法能够显着提高性能
- ArrayList与HashMap的区别
- arrayList与hashmap的区别
- HashMap与Hashtable的区别 ArrayList和LinkedList区别
- ArrayList与LinkedList 以及 Hashtable与HashMap之间的区别
- List,Map,ArrayList,LinkedList与HashMap的区别
- ArrayList,Vector,HashMap,HashSet,HashTable之间的区别与联系
- ArrayList,Vector,HashMap,HashSet,HashTable之间的区别与联系
- ArrayList,Vector,HashMap,HashSet,HashTable之间的区别与联系
- Vector与 ArrayList、Hashtable 与 HashMap、ArrayList 与 LinkedList的区别
- HashMap与ArrayList的PK
- HashMap与ArrayList的PK
- Vector与ArrayList/Hashtable & HashMap /ArrayList & LinkedList区别
- Vector与ArrayList、Hashtable和HashMap、ArrayList和LinkedList区别
- 浅析java中ArrayList与Vector的区别以及HashMap与Hashtable的区别
- LinkedList与ArrayList的区别||HashTable与HashMap的区别||Vector||Set
- ArrayList Vector Hashtable HashMap的区别
- HashMap、HashTable、ArrayList、LinkedList、Vector的区别
- HashMap、HashTable、ArrayList、LinkedList、Vector的区别 .
- AOP面向切面编程
- JAVA--浅谈java中间缓存变量机制---(j++和++j的区别)
- python学习——tuple
- 读书笔记
- 堆排序及python实现
- arrayList与hashmap的区别
- Spring学习之AOP
- Java代码规范
- 读书笔记之地址空间
- 51nod1298
- Java开发GET/POST请求中文乱码、JSP页面中文乱码(100%能解决)
- ubuntu下安装wxpython
- 避免大规模故障的微服务架构
- HDU 2602 Bone Collector(01背包)