黑马程序员技术交流社区

标题: 几种集合使用的方式和选择还有最大的特点 谁能讲解下? [打印本页]

作者: ZhangYL    时间: 2014-7-26 23:55
标题: 几种集合使用的方式和选择还有最大的特点 谁能讲解下?
本帖最后由 ZhangYL 于 2014-8-2 07:26 编辑

几种集合都有自己的特点,在什么样的情况下选择什么样的集合呢,希望对集合非常了解的人能讲解一下,谢了

作者: 渴望学习    时间: 2014-7-27 11:41
使用集合的技巧:
看到Array就是数组结构,有角标,查询速度很快。
看到link就是链表结构:增删速度快,而且有特有方法。addFirst; addLast; removeFirst(); removeLast(); getFirst();getLast();
看到hash就是哈希表,就要想要哈希值,就要想到唯一性,就要想到存入到该结构的中的元素必须覆盖hashCode,equals方法。
看到tree就是二叉树,就要想到排序,就想要用到比较。
比较的两种方式:
一个是Comparable:覆盖compareTo方法;
一个是Comparator:覆盖compare方法。
LinkedHashSet,LinkedHashMap:这两个集合可以保证哈希表有存入顺序和取出顺序一致,保证哈希表有序。

集合什么时候用?
当存储的是一个元素时,就用Collection。当存储对象之间存在着映射关系时,就使用Map集合。

保证唯一,就用Set。不保证唯一,就用List。
作者: 掌柜的--刘饮    时间: 2014-7-27 17:27
看看!!学而时习之
作者: ZhangYL    时间: 2014-7-28 09:21
渴望学习 发表于 2014-7-27 11:41
使用集合的技巧:
看到Array就是数组结构,有角标,查询速度很快。
看到link就是链表结构:增删速度快,而 ...

谢了  很详细  




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