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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 左拉 于 2014-4-19 19:24 编辑

假设有以下类:

  1. class Student{
  2.           private String name;
  3.           private int age;
  4.           public Student(String name,int age)
  5.           {
  6.                this.name=name;
  7.                this.age=age;
  8.            }

  9.           public String toString()
  10.          {
  11.                return this.name+","+this.age;
  12.           }
  13. }
复制代码
那么一个问题来了:


  1. public class Test
  2. {
  3.         public static void main(String[] args)  {
  4.                  Student[] stus=new Student[]{
  5.                         new Student("test-a",21),new Student("test-b",21),new Student("test-c",20)
  6.                  };
  7.                 System.out.println(stus.toString());
  8.         }
  9. }
复制代码
输出结果是变成数组地址,还是默默滴调用每个对象的toString()方法呢?
原谅我在网吧。。。




评分

参与人数 1技术分 +1 收起 理由
枫儿 + 1 神马都是浮云

查看全部评分

7 个回复

正序浏览
左拉 中级黑马 2014-4-19 19:54:49
8#
NNERO 发表于 2014-4-19 19:51
是打印数组地址。
这里的的System.out.println(stu.toString());是打印数组名的toString();没有指定元素就 ...

对对对!@
回复 使用道具 举报
NNERO 中级黑马 2014-4-19 19:51:53
7#
是打印数组地址。
这里的的System.out.println(stu.toString());是打印数组名的toString();没有指定元素就会打印数组地址
如果想要打印对象的toString(),需要加角标。比如:System.out.println(stu[1].toString());

回复 使用道具 举报
    一个自定义的类,如果你重写了Object的toString方法.输出的时候就会调用重写的toString方 法,即使你显示地加上
toString也是一样的,如果没有重写就会默认调用Object的toString方法!
回复 使用道具 举报
左拉 发表于 2014-4-19 19:42
我说的是显式地调用toString()方法,加上str.toString(),结果是什么

再说了 String已经重写了toString()方法,所以还是不要用String 测试好
回复 使用道具 举报
清风有意 发表于 2014-4-19 19:41
调用的是数组的toString()方法,打印数组地址。
我的简单的代码如下:

我说的是显式地调用toString()方法,加上str.toString(),结果是什么:(
回复 使用道具 举报
调用的是数组的toString()方法,打印数组地址。
我的简单的代码如下:
  1. package exercise;
  2. public class Test6 {

  3.         public static void main(String[] args) {
  4.                 String[] str=new String[]{new String("abc"),new String("abc1"),new String("abc2")};
  5.                 System.out.println(str);
  6.         }

  7. }
复制代码
回复 使用道具 举报
我觉得是地址信息:)
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马