黑马程序员技术交流社区

标题: set list什么区别 [打印本页]

作者: 郝锡强    时间: 2011-12-29 21:33
标题: set list什么区别
本帖最后由 郝锡强 于 2011-12-30 11:41 编辑

RT
都是怎么用的啊,视频没怎么看到这个


少下视频了。。。继续下载,看了看,貌似明白了,都是累死数组的操作是吧,一个可以有重复元素,而且,我看API方法差不多

该贴已经同步到 郝锡强的微博
作者: 赵玮    时间: 2011-12-29 21:37
集——Set
Set集合中不区分元素的顺序,不允许出现重复元素。
列表——List
List集合区分元素的顺序,且允许包含重复元素
作者: 杨旭    时间: 2011-12-29 22:04
set容器中的对象不允许重复

set容器接口的实现类有HashSet和 LinkedHashSet两个

HashSet不保证迭代顺序, LinkedHashSet按照元素插入的顺序迭代.

List对象容器的使用

List容器中的对象允许重复

常用的list接口的实现类有ArrayList和LinkedList
作者: 颜宗茂    时间: 2011-12-29 22:05
List接口对Collection进行了简单的扩充,它的具体实现类常用的有ArrayList和LinkedList。你可以将任何东西放到一个List容器中,并在需要时从中取出。Set接口也是Collection的一种扩展,而与List不同的时,在Set中的对象元素不能重复,也就是说你不能把同样的东西两次放入同一个Set容器中。它的常用具体实现有HashSet和TreeSet类。
作者: 杨丹丹    时间: 2011-12-29 22:49
List和Set都是接口。他们各自有自己的实现类,有无顺序的实现类,也有有顺序的实现类。
最大的不同就是List是可以重复的。而Set是不能重复的。
List适合经常追加数据,插入,删除数据。但随即取数效率比较低。
Set适合经常地随即储存,插入,删除。但是在遍历时效率比较低。
作者: 罗全涛    时间: 2011-12-30 00:38
本帖最后由 罗全涛 于 2011-12-30 10:14 编辑

list和set都是接口,都是集合框架的成员
列表允许重复,且可以有多个null值存在,有序
集合Set是为了模仿数学上的集合特点,数学上
集合有三个特点:确定性、互异性、无序性。
因此Set不允许重复,至多有一个null值存在,无序
同时Set仅仅提供了对集合整体上的把握,没有精确到
对元素的控制,而List既能整体把握,有提供了对元素
精确控制的方法。
举个例子
Set中的add方法,
add(E e)  如果 set 中尚未存在指定的元素,则添加此元素(可选操作)。
List中的add方法
add(E e)   向列表的尾部添加指定的元素(可选操作)。
综合可以看出插入位置一个是尾部,一个是不确定,即有无对元素
的精确控制。
自己看API总觉的,希望对你有用。

作者: 刘基军    时间: 2011-12-30 10:16
视频里集合那部分,ArrayList,LinkedList,HashSet,TreeSet都是有讲到的




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2