1.List接口下都有哪些集合,他们各自有什么特点
1,ArrayList
ava.util.ArrayList集合数据存储的结构是数组结构。元素增删慢,查找快,由于日常开发中使用最多的功能为查询数据、遍历数据,所以ArrayList是最常用的集合。
许多程序员开发时非常随意地使用ArrayList完成任何需求,并不严谨,这种用法是不提倡的。
2,LinkedList
java.util.LinkedList集合数据存储的结构是链表结构。方便元素添加、删除的集合。
3,Vector
现在已经被ArrayList集合取代
2.Set接口下的集合是如何保证无序不可重复的
HashSet是根据对象的哈希值来确定元素在集合中的存储位置,因此具有良好的存取和查找性能,保证元素唯一性的方式依赖于:hashCode与equals方法。
3.我们为什么要重写HashCode( )和equals()方法?
给HashSet中存放自定义类型元素时,需要重写对象中的hashCode和equals方法,建立自己的比较方式,才能保证HashSet集合中的对象唯一
4.数据在存入Set集合的时候,是先判断HashCode()还是先判断equals(),为什么?
先判断HashCode(),如果一个对象的字段过多,那就会频繁的进行字段的比较,非常耗费性能,所以先判断HashCode(),只有在哈希值相同的时候,在判断equals()
5.Comparable和Comparator两个接口的区别,哪种接口使用的多,为什么?
Comparable:强行对实现它的每个类的对象进行整体排序。这种排序被称为类的自然排序,类的compareTo方法被称为它的自然比较方法。只能在类中实现compareTo()一次,不能经常修改类的代码实现自己想要的排序。实现此接口的对象列表(和数组)可以通过Collections.sort(和Arrays.sort)进行自动排序,对象可以用作有序映射中的键或有序集合中的元素,无需指定比较器。
Comparator强行对某个对象进行整体排序。可以将Comparator 传递给sort方法(如Collections.sort或 Arrays.sort),从而允许在排序顺序上实现精确控制。还可以使用Comparator来控制某些数据结构(如有序set或有序映射)的顺序,或者为那些没有自然顺序的对象collection提供排序。
1.List接口下都有哪些集合,他们各自有什么特点
1,ArrayList
ava.util.ArrayList集合数据存储的结构是数组结构。元素增删慢,查找快,由于日常开发中使用最多的功能为查询数据、遍历数据,所以ArrayList是最常用的集合。
许多程序员开发时非常随意地使用ArrayList完成任何需求,并不严谨,这种用法是不提倡的。
2,LinkedList
java.util.LinkedList集合数据存储的结构是链表结构。方便元素添加、删除的集合。
3,Vector
现在已经被ArrayList集合取代
2.Set接口下的集合是如何保证无序不可重复的
HashSet是根据对象的哈希值来确定元素在集合中的存储位置,因此具有良好的存取和查找性能,保证元素唯一性的方式依赖于:hashCode与equals方法。
3.我们为什么要重写HashCode( )和equals()方法?
给HashSet中存放自定义类型元素时,需要重写对象中的hashCode和equals方法,建立自己的比较方式,才能保证HashSet集合中的对象唯一
4.数据在存入Set集合的时候,是先判断HashCode()还是先判断equals(),为什么?
先判断HashCode(),如果一个对象的字段过多,那就会频繁的进行字段的比较,非常耗费性能,所以先判断HashCode(),只有在哈希值相同的时候,在判断equals()
5.Comparable和Comparator两个接口的区别,哪种接口使用的多,为什么?
Comparable:强行对实现它的每个类的对象进行整体排序。这种排序被称为类的自然排序,类的compareTo方法被称为它的自然比较方法。只能在类中实现compareTo()一次,不能经常修改类的代码实现自己想要的排序。实现此接口的对象列表(和数组)可以通过Collections.sort(和Arrays.sort)进行自动排序,对象可以用作有序映射中的键或有序集合中的元素,无需指定比较器。
Comparator强行对某个对象进行整体排序。可以将Comparator 传递给sort方法(如Collections.sort或 Arrays.sort),从而允许在排序顺序上实现精确控制。还可以使用Comparator来控制某些数据结构(如有序set或有序映射)的顺序,或者为那些没有自然顺序的对象collection提供排序。
|