黑马程序员技术交流社区
标题:
public String toString()这个方法有什么作用?
[打印本页]
作者:
宿万涛
时间:
2011-11-1 22:03
标题:
public String toString()这个方法有什么作用?
每次看到这行代码感觉怪怪的,这行代码有什么作用?什么时候调用呢?我从表面上理解就是传进来一个参数,这个方法把传进来的参数转换成String类型的,不知道此理解有没有错误?求解答
作者:
何周舟
时间:
2011-11-1 22:06
不是直接toString();?
作者:
沙铁健
时间:
2011-11-1 22:13
本帖最后由 沙铁健 于 2011-11-1 22:22 编辑
重写 toString()方法
例如 你 用foreach遍历 一个数组
for (student student : stu) {
System.out.println(student);
}
复制代码
这样输出的 直接输出时会输出该对象的哈希值,格式为:类名@对象的哈希值。
如果在student类里加上
public String toString() {
return "姓名:" + sName ;
}
复制代码
例如我这里就一个字段sName 从写下 toString()
这样执行foreach就会输出
姓名:xxxx
姓名:xxxx
姓名:xxxx
姓名:xxxx
....
foreach就是加强for 习惯这么写.......
作者:
秦冲
时间:
2011-11-1 22:16
因为它是Object里面已经有了的方法,而所有类都是继承Object,所以“所有对象都有这个方法”。这个方法通常是为了方便输出,比如System.out.println(xx),自动调用xx的toString()方法。
作者:
宿万涛
时间:
2011-11-1 22:34
感激二楼 三楼 把我的思路打开了{:soso_e113:}
作者:
吉许
时间:
2011-11-2 09:04
@Override
toString是Object中的方法,因为Object是所有类的超类.这时你自定义的类一定要覆盖的方法,
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2