为什么java实体类需要重写toString方法

如果没重写toString的情况:

  1. Object 类的 toString 方法

        返回一个字符串,该字符串由类名(对象是该类的一个实例)、at 标记符“@”和此对象哈希码的无符号十六进制表示组成。换句话说,该方法返回一个字符串,它的值等于:

                getClass().getName() + '@' + Integer.toHexString(hashCode())

 

 

重写toString:

  2.对对象打印输出的一种格式化。当你print一个对象是你需要这个对象在打印时展现的是什么形态你就把toString重写成你需要的返回形态。重写hashcode主要是为了规定对象之间的比较方式。如果你把对象存入hash集合,集合就会对对象的hashcode进行比较以区分两个对象是否是同一对象。

posted @ 2018-05-28 17:35  Final_static_杨  阅读(1563)  评论(0编辑  收藏  举报