黑马程序员技术交流社区

标题: list、set和map 的都有哪些区别啊 [打印本页]

作者: Treasureと情    时间: 2012-2-28 12:09
标题: list、set和map 的都有哪些区别啊
list、set和map 的都有哪些区别啊
作者: 冯兵兵    时间: 2012-2-28 12:12
List 用于遍历一个数组时效率最高;比如在循环显示所有信息时经常用到;
Set中的元素是不能重复的,如果使用add(Object obj)方法添加已经存在的对象,则会覆盖前面的对象;虽然Set同List都实现了Collection接口,但是他们的实现方式却大不一样。List基本上都是以Array为基础。但是Set则是在HashMap的基础上来实现的,这个就是Set和List的根本区别。 Map 就是键值对map(键,值),键是Sting 类型 值是Object (对象类型),所以在知道某条信息的一项时查询其他项就用该方法,效率最高!
作者: 雷楚光    时间: 2012-2-28 12:14
List特点:元素有序,可重复
Set集合无序,不允许有重复元素
Map存储了一系列键值的映射关系,键是唯一。
作者: 刘泰    时间: 2012-2-28 16:38
set 中又可以分为hastset和treeset.hashset中不允许有重复的元素,不保证集合中元素的顺序,Hashset中允许包含null的元素,但是最多只能有一个,treeset在添加对象时,会自动暗中某种比较规则的将其插入到有序的对象序列中
以保证treeset集合元素组成的对象序列时刻有序,也可以说treeset具有排序功能,
map有可以分为hashmap,hashtable,treemap(不怎么常用吧,自我感觉)
hashmap是一种映射关系,即通过键值对的形式保存数据,允许时用null值和null键,hashtable则不允许有空值,或空键。具体可以看看有关于集合和映射的有关视屏
作者: a504079589    时间: 2012-2-28 20:59
List和set都属于Collection单列集合
List和set每次存一个对象 但是list中的元素是有顺序可以重复
set无存储顺序,不能重复
Map存储的是键值对,键是唯一的,可以通过键查找值




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