分享一下面试常会问到的 集合面试题
1,ArrayList, linkList,vector 的区别
ArrayList 的优点 查询速度快 使用异步方式
linkList 增删改速度快
vector 查询速度快 和ArrayList类似 使用同步方式 扩容是ArrayList的0.5倍
使用场景:
ArrayList: 适合在不考虑线程安全的,和对集合的操作比较少的时候使用
linkList :适合在对集合操作比较多的时候 比如 session版的订单
vector : 适合在多线程的情况下操作一个类的时候使用
2 Array于ArrayList的区别
Array 是一个数组 长度是固定的 只能存储相同的数据类型
ArrayList 是一个集合 它可以存储不同的数据类型(前提是不加泛型) 长度可变
简单来说ArrayList 就是array 的复杂 版本
3 HashMap treeMap linkedHashMap的区别
在map中hashMap查询速度 以及对数据元的操作 hashMap是最好的选择
treeMap 带有排序功能
likedHashMap 带有顺序储存的功能
4 HashMap和HashSet区别
实现接口不同 存储值方式不同 计算hashcode码不同 取值速度HashMap要快些
List Set Map 之间的区别
list 和set都继承collection
list是有序的 可以插入多个相同元素 set无重复 map 键无重复 值可以重复
总结一下 Map是set list的集合版
另外小编分享一张之前看到的思维导图
有问题的可以留言给小编