1.Collection和Collections的区别?
Collection是一个接口,Collections是一个操作集合的工具类
2.Set里的元素是不能重复的,那么用什么方法来区分重复与否呢?是用==还是equals()?他们有和区别
et里的元素是不复能重复的,用iterator()方法来区分重与否.
equals 方法(是String类从它的超类Object中继承的)被用来检测两个对象是否相等,即两个对象的内容是否相等。
==用于比较引用和比较基本数据类型时具有不同的功能:
比较基本数据类型,如果两个值相同,则结果为true
而在比较引用时,如果引用指向内存中的同一对象,结果为true
3.List Set,Map是否继承自Collection接口
Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素。一些Collection允许相同的元素而另一些不行。一些能排序而另一些不行。Java JDK不能提供直接继承自Collection的类,Java JDK提供的类都是继承自Collection的'子接口',如:List和Set。
4.两个对象值相同(x.equals(y)==true),但却有不同的hash code,这句话对不对
两个对象值相同(x.equals(y)==true),但却可有不同的hash code这句话对不对
5.说出ArrayList,Vector,LinkedList的存储性能,和特性
ArrayList
存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元
素要涉及数组元素移动等内存操作,所以索引数据快而插入数据慢,Vector
于使用了
LinkedList
6.HashMap和Hashable的区别
HashMap 是Hashtable 的轻量级实现(非线程安全的实现),他们都完成了Map 接口,主要
区别在于HashMap 允许空(null)键值(key),由于非线程安全,效率上可能高于Hashtable。
HashMap 允许将null 作为一个entry 的key 或者value,而Hashtable 不允许。
HashMap 把Hashtable 的contains 方法去掉了,改成containsvalue 和containsKey。因为contains
方法容易让人引起误解。
Hashtable 继承自Dictionary 类,而HashMap 是Java1.2 引进的Map interface 的一个实现。
7.ArrayList和Vector的区别,HashMap和Hashable的区别
2).数据增长:当需要增长时,Vector默认增长为原来一培,而ArrayList却是原来的一半