黑马程序员技术交流社区
标题:
请教,重写toString方法的作用什么?
[打印本页]
作者:
roybill
时间:
2015-6-18 23:48
标题:
请教,重写toString方法的作用什么?
请教,重写toString方法的作用什么?
作者:
sss18310878521
时间:
2015-6-19 02:48
标题:
那么当打印P时就直接打印p里面的toString方法,简化代码
本帖最后由 sss18310878521 于 2015-6-19 02:49 编辑
举个例子:
Person p=new Person();
System.out.println(p);
复制代码
作者:
world.net
时间:
2015-6-19 09:19
重写toString方法可以将对象按照所需要的字符串格式输出
作者:
Nemo
时间:
2015-6-19 10:05
自己定义自定义对象的打印格式
作者:
fanxin_meng
时间:
2015-6-19 10:13
首先说一下,什么情况下要重写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吧。
作者:
爱李萝卜
时间:
2015-6-19 10:18
得到你想要的字符串格式
作者:
zhenxing133
时间:
2015-6-19 10:55
楼上解释不错
作者:
java8023
时间:
2015-6-19 10:57
很多类都已经自己重写了,你自己定义的对照也要重写一下
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2