两个接口都是继承自Collection.

List (inteface)

次序是List 的最重要特点,它确保维护元素特定的顺序. 
--ArrayList 允许对元素快速随机访问. 
--LinkedList 对顺序访问进行优化,向List 中间插入与移除的开销并不大,具有addFrist(),addLast(),getFirst,getLast,removeFirst和removeLast().这些方法使得LinkedList可当作堆栈/队列/双向队列.

Set (inteface)

存入Set 的每个元素必须唯一,不保证维护元素的次序.加入Set 的Object必须定义equals()方法 
--HashSet 为快速查找而设计的Set ,存入HashSet对象必须定义hashCode(). 
--TreeSet  保护次序的Set ,使用它可以从Set 中提取有序序列. 
--LinkedHashSet  具有HashSet的查询速度,且内部使用链表维护元素的次序. 
它们之间的存储方式不一样: 
TreeSet采用红黑树的树据结构排序元素. 
HashSet采用散列函数,这是专门为快速查询而设计的. 
LinkedHashSet内部使用散列以加快查询速度,同时使用链表维护元素的次序.

使用HashSet/TreeSet时,必须为类定义equals();而HashCode()是针对HashSet,作为一种编程风格,当覆盖equals()的时候,就应该同时覆盖hashCode().

最新文章

  1. 数组去重及数组的prototype原型
  2. JavaEE 启示录
  3. 解析C#开发过程常见的编程模式
  4. Android Studio使用中的异常
  5. Scrum会议8(Beta版本)
  6. java读取目录下所有csv文件数据,存入三维数组并返回
  7. 黑马程序员-C#学习笔记(二)
  8. java开发之多线程需要学习和理解的东西
  9. .Net平台开源作业调度框架Quartz.Net
  10. JavaScript中JSON字符串和JSON对象相互转化
  11. WebView之js调用Android类的方法传递数据
  12. 借助Maven入手Spring Boot第一个程序
  13. js 实现table每列可左右拖动改变列宽度 【转载】
  14. 2015 多校联赛 ——HDU5334(构造)
  15. SpringCloud微服务Zuul跨域问题
  16. 1003 Emergency Dijkstra
  17. jQuery发布1.9正式版,最后支持IE 6/7/8
  18. [0403]学习一个——苟(简单Java开发)
  19. 有2个表,结构相似,有一个字段关联,现在怎么把A表的数据添加到B表中,条件是A表不在B表的数据?? 请各位高手多多指点,是oracle的数据库
  20. .net core 2.2 & Mongodb

热门文章

  1. Multiple Regression
  2. eclipse中的项目受svn管理
  3. WPF中DependencyObject与DependencyProperty的源代码简单剖析
  4. 《SPARK/TACHYON:基于内存的分布式存储系统》-史鸣飞(英特尔亚太研发有限公司大数据软件部工程师)
  5. 【转】java中&和&&的区别和联系
  6. Windows下 Pycharm连接Github 教程
  7. tomcat 启动自动加载外部项目
  8. SharePoint自动化系列——通过PowerShell创建SharePoint Lists
  9. Redis Keys 命令 - 查找所有符合给定模式( pattern)的 key
  10. kmp返回头位置的模板