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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 940752944 中级黑马   /  2016-7-2 22:05  /  370 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

为什么要重写toString 和equals这两个方法

2 个回复

倒序浏览
toString()这个方法是使得数据返回字符串类型,例如:将一个整型数组遍历后将其元素用字符串的形式的写出就可以用到toString()的方法
int[] list = new int[10];将这个数组遍历之后(没有初始化元素都为0)
String s = Array.toString(list);将数组的元素用字符串的形式返回来,就永大搜了这个方法
还有字符型数据,byte型都可以用字符串输出
equals()方法:
这个方法主要是用来比较内容的,可以用于比较两个字符串是否相等,在面向对象中也可以用于两个对象的比较
回复 使用道具 举报
知识补充:
(1)String对象中有重写Object的equals方法,重写为比较两个对象的值是否相等
(2)要分清Object对象中的equals方法和String对象中的equals方法的区别

原因分析:
(1)重写toString()方法,可以实现输出自己【 自定义 】的字符串,增加了灵活性。
(2)由于String中的equals方法比较的是内容,如果通过equals方法比较两个对象,那么这时需要重写equals方法
(3)我的理解是:之所以需要重写,就是为了满足某种需要
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马