A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 280270738 中级黑马   /  2013-6-26 22:06  /  1527 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

ArrayList和Vector的区别,HashMap和Hashtable的区别

5 个回复

正序浏览
两个都是动态数组,但是Vector类的所有方法都是同步的,可以由两个线程安全的访问一个Vector对象。但是,如果由一个线程访问,就需要处理同步问题。而ArrayList方法不是同步的。
回复 使用道具 举报
补充楼上的大哥们一点吧,ArrayList和Vector都是会自动增长的集合,在数据超出范围时候,前者自动增长1.5倍,后者自动增长2.0倍,但是ArrayList没有人工设定增长空间的方法,而Vector有。
回复 使用道具 举报
效率的区别  Vecter早了效率低  Arraylist是1.5的效率高   
回复 使用道具 举报
ArrayList和Vector底层都是数组结构:
Vector是元老(jdk 1.0),线程同步,Vector特有的是枚举(Enumeration)

Hashtable:底层是哈希表数据结构,不可以存入null键null值。jdk1.0 效率低
HashMap:底层是哈希表数据结构。允许使用null键null值,该集合是不同步的。jdk1.2 效率高
TreeMap:底层是二叉树数据结构。线程不同步。可以用于给Map集合中的键进行排序。
回复 使用道具 举报

我只能说 你到后边会学到!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马