首页 > 代码库 > 集合泛型回顾加强

集合泛型回顾加强

一。谈起集合,首先应该想到一个图,如下:

技术分享

二。记住set与list的特征和区别:

set是无序且不可重复,list是有序可重复。

三。linkedlist与ArrayList的区别:

选用list时候用linedlist还是arraylist也要看他们的特点来区别对待:

linkedlist是用链表来实现的,修改容易,查找困难,而ArrayList是用数组实现的,查找容易,但修改就很繁琐,这个是为啥呢?我先查一查,再在这里补充。

四。泛型

泛型主要是针对jdk1.5之前,类型混乱,装入集合的类型都被当做object类型看待,从而失去自己的类型,而取出来的时候又要类型转换,效率低,容易产生错误。而泛型就避免了这种问题,使得可以在定义集合的时候就指定装载相应数据的类型,如果有错在运行之前就可以更正错误,及时改正之后不需要再为这这方面考虑。如List<String> s= new ArrayList();指定了list类型为string类型,因此只能往容器中添加string类型的数据,其他类型的就不可以。

五。集合中很广泛地运用了多态。

这个要多注意,可能是之前水平太渣什么都不懂。类似这种List<String> s= new ArrayList(),Collection a=new hashmap();

六。六个接口分别记住:collection,iterator,set,list,map,comparable

其中,iterator:所有实现了collection接口的容器都有一个iterator方法来返回一个实现了iterator接口的对象。技术分享

comparable接口是用来比较的,所有可以排序的类都实现了java.lang.comparable接口。

技术分享

map里面的键值对的键(索引)会比较hashcode。

集合泛型回顾加强