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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© --_.Is’攸稀 中级黑马   /  2013-11-10 17:37  /  1177 人查看  /  9 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 --_.Is’攸稀 于 2013-11-10 22:36 编辑

好不容易看完所有有关集合的视频,开始总结的时候发现忘得也差不多了,只能靠写些练习熟悉熟悉,刚写练习的时候就碰到问题:
是不是集合都是各有自己的用处的,如果需要排序的话,只能用set集合,不用list?



自己解决了~用list集合的话就用Collections的sort()的方法就可以了>Collections.sort(c1);

点评

给力~  发表于 2013-11-11 09:22

9 个回复

倒序浏览
{:soso_e127:}我也是刚看的视频,不过我觉得的先搞清楚list是有角标的,可以操作角标排序,而set里面有个二叉树排序好像。。还有set里面元素不可重复。我还没总结完集合。。等我总结完了给你借鉴一下{:soso_e130:}
回复 使用道具 举报
hubby 发表于 2013-11-10 17:43
我也是刚看的视频,不过我觉得的先搞清楚list是有角标的,可以操作角标排序,而set里面有个二 ...

虽然没回答我的问题,不过先谢谢了。
回复 使用道具 举报
帮你总结一下
集合的超类是 Collection, 它有一个静态工具类 Collections,分为 List, Set 两条分支
其实集合最好是和 Map 一起记
List:列表,有序,可重复
常用 List:ArrayList,Vector(ArrayList线程安全版),LinkedList(链表)
Set:概念类似数学中的集合,无序,不可重复
常用 Set:HashSet(Hash支持,见Map),TreeSet(有序的)
Map:不属于 Collection,概念类似字典(Dictionary),键值对(K-V),无序,不可重复,
        内存中按照Hash算法存储,其实并非无序,而是按照特定顺序(Hash值),
        所以必须要重写 HashCode 方法,Hash又叫散列(分散排列),这个最好要知道
常用 Map:HashMap,HashTable(HashMap线程安全版)
P.S.
Collection & Map.Entry 都支持迭代器(Iterator),用以遍历数据

至于你的问题,排序可以用List,可以用TreeSet
因为他们实现了Comparable/Comparator接口(只要实现了这组接口的其中一个都可以排序)
回复 使用道具 举报
零下五度的水 发表于 2013-11-10 18:14
帮你总结一下
集合的超类是 Collection, 它有一个静态工具类 Collections,分为 List, Set 两条分支
其实 ...

超类不是迭代器吗?另外想问下你说list TreeSet只要实现了Comparable/Comparator就可以排序了,TreeSet我懂是默认实现,要改的话TreeSet<String> c1=new TreeSet<String>(new LenComparator());在LenComparator类里实现Comparator接口再覆盖,那list怎么弄呢?
回复 使用道具 举报
--_.Is’攸稀 发表于 2013-11-10 18:36
超类不是迭代器吗?另外想问下你说list TreeSet只要实现了Comparable/Comparator就可以排序了,TreeSet我 ...

list中你存入时候什么顺序就是什么顺序,可以把他看成一个数组就行
回复 使用道具 举报
Sasson 中级黑马 2013-11-10 20:34:47
7#
{:soso_e105:}明天才看能看到集合
回复 使用道具 举报
也不是,list就可以对字符串进行提取操作
回复 使用道具 举报
迭代器只是相当于一个工具,使集合遍历起来方便一点,
说Collection是超类是概念上的,List 和 Set 相当于拥有某种特质的 Collection
自定义比较器(Comparator)一般不用在已经写好的类上。。。
是说你要是自己写一个List or Set 的子类可以直接实现这个,
你要是想自定义排序的话,Collections.sort 有一个传入自定义比较器的方法,
直接用那个方法排序就是了,反正只要是api自带的排序方法,
默认的一定Comparable,然后必然有一个Comparator为参数的重载方法
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马