Java 在什么情况下要重写toString

 我来答
百度网友28a379c
2015-09-10 · TA获得超过296个赞
知道大有可为答主
回答量:792
采纳率:100%
帮助的人:1191万
展开全部
两个都重写toString了吧。你查查JDK的API就知道了。
首先说一下,什么情况下要重写toString,object类里的toString只是把字符串的直接打印,数字的要转化成字符再打印,而对象,则直接打印该对象的hash码。所以当你要想按照你想要的格式去字符串一些对象的时候,就需要重写toString了。比如一个Student对象,直接toString肯定是一个hash码。然而你想得到的比如是:name:***,age:***。这时就重写toString就是在toString里写:System.out.println(“name:”+student.getName);
System.out.println(“age:”+student.getAge)。
这样再toString就直接反回你想要的格式。
通过查api我们就可以知道HashSet的toString是把s的值格式化成[*, * ,*],就是给s的加个中括号,而且用逗号分开。
而HashMap的toString是把m的值格式化成{key1=value1,key2=value2,key3=value3}
所以你打印出来的是那样的格式,这就是重写toString的作用,具体请看api吧。
希望你能理解。谢谢,有不懂的再问。
百度网友590bb8a
2015-09-09
知道答主
回答量:28
采纳率:0%
帮助的人:17万
展开全部
在输出对象属性时,重写toString按照你希望的输出形式重写
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
妞光年弃寻橙12
2015-09-09 · TA获得超过1862个赞
知道小有建树答主
回答量:1280
采纳率:33%
帮助的人:556万
展开全部
输出一个对象属性的时候。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式