集合collection 面试

面试到集合(Collection) 这是面试经常要问的题目 必问可以说:
下面我们来讲几个经常问到的题目
说说ArrayList 和Vector 以及 LinkedList 性能和特性?
ArrayList 和Vector 都是以数组方式存储数据 数组大小大于实际存储数据长度
他们有允许 直接序号索引元素 但插入 数据需要移动数组和内存操作
所以索引数据快 但插入慢
由于Vector 是 synchronzied(线程安全) 所以性能比 ArrayList 差
LinkedList 是使用双向 链表存储数据 按序号直接索引数据的时候 需要 对前项和后项的遍历 但是插入数据只需要 记录本项 前项和后项 所以索引数据慢 而插入快

接下来 在说说
Collection 和Collections 这两个的区别?
Collection 是一个集合接口 他的实现类有
List Set
而Collections 是集合类的一个帮助类
他提供了一些静态方法 排序 sort() ,搜索iteratorBinarySearch() 以及线程安全等操作
在讲讲 hashMap 和Hashtable 吧?
hashMap 实现 是JAVA 1.2以后引入的接口 Map
而hashTbale 是继承 Dictionary 实现Map 接口
hashMap 允许 将 空做 键值 而Hashtable 不允许
hashMap 去掉了 containts 改成了containtsValue 及 containtsKey

hashMap 和Hashtable 都是踩用 hash算法
但是由于 Hashtable 是属于 synchronized 所以 性能比hashMap 差
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值