重写toString方法,可以控制println打印的结构。

如果需要往hashSet或者HashMap中存,需要重写hashCode和equals方法,因为hashSet执行添加,以对象为参数删除,和contains等操作时,都会默认的先去比较对象的hashCode如果不同则会继续执行equals方法,如果两者比较的结果都是相同,那么这个对象就不会被存入hashSet。HashMap则会用同样的原理去比较键。

如果需要往treeSet中存需要该类implements Comparable接口,并实现其compareTo方法的内容,因为往treeSet执行存入,以对象为参数删除数据等操作时候,都会先去用compareTo比较几次treeSet中已有的对象,如果返回值是零就不再存入,否则就按返回值的大小决定后者是继续往下比较最后决定把对象放在树的哪个位置,这也是为什么输出只存有String对象的treeSet时可以按照顺序输出,因为treeSet已经按顺序排好了他们。TreeMap和treeSet类似。

另外treeSet还可以在创建时就指定其按照什么样的顺序排列,只要在new treeSet<E>()的括号中设定 实现了Comparator接口的compare方法的 类 的 对象即可)。

最新文章

  1. 从零开始学 Java - 数据库连接池的选择 Druid
  2. PostgreSQL除法保留小数
  3. python基础——面向对象编程
  4. xml 解析
  5. 分享一个Winform里面的HTML编辑控件Zeta HTML Edit Control,汉化附源码
  6. (zt)Lua的多任务机制——协程(coroutine)
  7. QObject,有一个生存线程(慢慢体会)
  8. 区块链下的io域名到底有多神秘?
  9. python调用百度语音(语音识别-斗地主语音记牌器)
  10. SpringMVC跨域问题排查以及源码实现
  11. JAVA课程设计——一个简单的教务人事管理系统
  12. 漫步Java------初识java
  13. FireDAC 下的 Sqlite [9] - 关于排序
  14. [svc][op]vim自动添加注释
  15. 第六章 Windows应用程序对键盘与鼠标的响应 P121 6-8
  16. Machine Learning笔记整理 ------ (一)基本概念
  17. myeclipse自动设置类和方法的注释(快捷键)
  18. 热备模式相关问题2.txt
  19. 利用 MySQL 技能学习 DB2 Express: DB2 与 MySQL 的管理任务和基本任务
  20. 【洛谷P1064】[NOIP2006] 金明的预算方案

热门文章

  1. C#各种异常处理方式
  2. 转: Go -- 单例
  3. idea打包可执行文件
  4. 如何使用C++回调函数
  5. [ IOS ] iOS-控制器View的创建和生命周期
  6. CVPR 2015 papers
  7. 数据库实例: STOREBOOK &gt; 表空间
  8. C语言编译器不检查数组下标越界
  9. JSON与XML
  10. JavaScript Event Delegation, and event.target vs. event.currentTarget