黑马程序员技术交流社区

标题: 关于集合,不管什么集合,小弟感觉都像map集合 [打印本页]

作者: itheima01    时间: 2013-5-19 15:38
标题: 关于集合,不管什么集合,小弟感觉都像map集合
本帖最后由 itheima01 于 2013-5-24 17:31 编辑

例如list 就是key为索引,0,1,2..... value就是对象   set key为对象 value为空,怎么看怎么都像map中的key value。 key不能重复,不能为空。不知道小弟的理解有哪些不对,请前辈多多指点。
作者: 画饼    时间: 2013-5-19 16:46
可以加QQ944579708一起讨论
作者: 刘胜寒    时间: 2013-5-19 21:25
list是以角标值来查找获取对象的。map是以键值对中的key值来映射来查找value的值的,
map中要看什么类型的map来决定key和value是否可以为空。
兄弟看看书吧。
你的名字应该改成Itheima007。。
作者: 袁梦希    时间: 2013-5-20 01:28
楼主你好  如果问题已经解决  那么把帖子的类型改为“已解决”
作者: slatop@qq.com    时间: 2013-5-23 14:52
编程是灵活运用,不是死搬硬套。
首先:集合是干嘛的?嗯。同一类型数据的组合体是集合。
其次:集合的作用是什么?便于对多个同一类型数据的管理
最后:集合的特性有哪种?
   |-链表,同一类型数据的串连,将原有数据封装成一个新的对象,对象内有原数据和一个指向自身类的指针(单向链表),两个指向自身类的指针(双向链表),链表数据查找须要经历循环,所以好处在于增加删除快,缺点是查找速度慢。
   |-数组,同一类型数据的排列,使用有序内存将同一类型数据存放到相连的内存区域中,通过下标可以直接访问任何一个对象,因为存放空间是连续的所以查找速度较快,但也正因为如此所以每次增加和删除中间数据,导致后续数据须要连续移位,增加内存copy量,所以增删速度慢。


java中有什么集合,集合有什么方法,我不知道。都不知道,谁知道? API文档最清楚。不让用帮助文档?没有帮助文档? 好吧,我自己写一个。无非就是一个类里定义一个数据类型,几个对类型的访问方法。缺什么自己加什么,总行了吧。二叉树是基于链表的,每一个点记录自身数据之外,记录两个本类型。二叉堆基于数组的,虽然是堆形数据,但内存分布是线形的,堆中数据全部被填实,n=n*2+1 左枝n=n*2+2.右枝。

记住这些足够了。什么map集合,什么set集合。只因为map集合你学过所以你认识它,如果map集合不叫map了,改叫pam了你还认识他不
作者: 占琳    时间: 2013-5-23 14:58
大部分集合中放的都是对象 所以放入里面的数据都要是包装类  
取出来的时候都要向下转型   底层实现也不一样 例如ArrayList底层是一个长度为10的数组
而LinkedList底层是一个双向链表  ,其他HashSet这些 底层也不一样的 根据不同的特性
我们来决定使用 list set 还是map




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