读书人

Java器皿List

发布时间: 2012-09-02 21:00:34 作者: rapoo

Java容器—List
List和Set区别
①List允许数据重复,Set不允许数据重复。(因为Set集合其实是Map的keySet,而在Map的实例中是不允许key值重复的。)
②ArrayList提供索引,具体实现类似于数组,可以通过index得到需要数据。Set内部实现为Map的实例,需要通过iterator遍历获得。
③List按序存储,Set不按序存储(HashSet不按序,TreeSet按序存贮的)。

ArrayList和Vector区别
①Vector线程安全,ArrayList线程非安全
②扩容方式不一样。

ArrayList和LinkedList区别
①ArrayList看做是一个长度可以变换的数组,LinkedList看做一个链表。
②如果需要进行频繁的插入和删除操作时,应选择LinkedList。如果只需要进行查询数据时,建议使用ArrayList。
③ArrayList初始大小为10,LinkedList是一个链表结果,没有初始大小。在使用ArrayList时,如果已知ArrayList的长度,在定义时则应该通过构造函数指定其初始大小,因为ArrayList初始长度为10,当插入多余10个时,ArrayList会自动扩容,这样效率不高。

读书人网 >编程

热点推荐