A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© mf152 中级黑马   /  2013-9-5 01:47  /  922 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

那位高手知道SET  MAP   LIST 的区别是啥,最好有代码举一下列子,谢谢

评分

参与人数 1技术分 +1 收起 理由
EYE_SEE_YOU + 1 赞一个!

查看全部评分

5 个回复

倒序浏览
学习框架的话,应该一开始就会说这几个集合的区别吧。
set:存储元素不可重复,无序(先后顺序)
list:存储元素可以重复,有序(先后顺序).
然后set和list不同的实现类,又有那么一点区别。
至于Map呢,map中存储的键值对,的键不可重复,每个键只能对应一个value.
list和set是单列集合,一次存一个元素,map是双列集合,一次两个。

评分

参与人数 1技术分 +1 收起 理由
EYE_SEE_YOU + 1

查看全部评分

回复 使用道具 举报
熬夜伤身,要注意身体
回复 使用道具 举报
|--ArrayList
     |-- 数组结构,查询快,增删慢     --有序 可以重复
   |--LinkedList
     |-- 链表结构,查询慢,增删块   ,堆栈      --有序,可以重复
   | --HashSet
     |-- 哈希表结构,不重复元素            --无序,不重复
   |--TreeSet
     |-- 二叉树,存储的元素自然排序  --不重复
   |--HashMap
     |-- 哈希表结构,双列集合,不重复元素  --无序
   |--TreeMap
     |-- 红黑树结构,双列集合,存储的元素自然排序 --无重复

  什么时候用集合
    数据太多,用数组存储
    对象太多,用集合存储
  
  如果是这些对象经常频繁进行查找工作 ArrayList
  如果是这些对象经常频繁进行修改工作 LinkedList

  存储集合中的对象需要唯一吗,如果需要 HashSet
  存储集合中的对象需要唯一吗,需要排序吗 如果需要 TreeSet

  如果需要同时存储两个对象,一个键,一个值,必须Map集合

  实在不知道该用哪一个集合 ArrayList(使用频率最高)
  能用Map不要用Set ,Set底层调用的就是Map中的功能

评分

参与人数 1技术分 +1 收起 理由
杨增坤 + 1

查看全部评分

回复 使用道具 举报
set,map,List他们都是集合,只是他们的存储结构是不一样的,所以他们之间的用到当然也会不一样的。List:元素是无序的,可以重复
     -------子类:ArrayList底层的数据结构是数组结构,LinkedListed的数据结构是链表结构  Vector底层的数据结构是数组结构
set:原始是有序的,元素不可以重复
         --子类------HashSet底层结构是:哈希表结构
                   TreeSet:底层是二叉树
Map:存储是一对一,键不可以重复,
            ----子类:HashTable和HashMap底层的数据结构的是哈希表
                           TreeMap的底层的数据结构是二叉树


希望对你有帮助!
回复 使用道具 举报
楼主 你的问题如果解决了!



请把您的问题的"未解决"更改为"已解决"!



谢谢合作!


回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马