1、Collection和Collections的区别
Collection是一个接口,
Collections是一个操作集合的工具类
2、Set里的元素是不能重复的,那么用什么方法来区分重复与否呢?是用==还是equals()?它们有何区别
Set里的元素是不能重复的,那么用iterator()方法来区分重复与否。equals()是判读两个Set是否相等。
equals()和==方法决定引用值是否指向同一对象equals()在类中被覆盖,为的是当两个分离的对象的内容和类型相配的话,返回真值。
3、List, Set, Map是否继承自Collection接口
list set 是 mapbu
4、两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对
对
5、说出ArrayList,Vector, LinkedList的存储性能和特性
ArrayList和Vector都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动等内存操作,所以索引数据快而插入数据慢,Vector由于使用了synchronized方法(线程安全),通常性能上较ArrayList差,而LinkedList使用双向链表实现存储,按序号索引数据需要进行前向或后向遍历,但是插入数据时只需要记录本项的前后项即可,所以插入速度较快。
6、HashMap和Hashtable的区别
HashMVectorap不是线程安全的
HashTable是线程安全的一个Collection。
7、ArrayList和Vector的区别,HashMap和Hashtable的区别
Vector是线程安全的也就是说是同步的
ArrayList不是线程安全的也就不是说是同步的
HashMVectorap不是线程安全的
HashTable是线程安全的一个Collection。