输出信息而不在java中显式调用toString()

时间:2016-04-06 02:55:32

标签: java printing tostring implicit

对于println中的第6步,我知道如何显式调用toString但是如何从数组中的当前学生输出学生信息而不显式调用toString()或使用任何访问器方法?

<android:clickable="true">

2 个答案:

答案 0 :(得分:0)

  1. 将变量name, address, major, gpa声明为成员变量。
  2. 覆盖此类的toString()方法。

    public String toString() {
        return "Name: " + name + "\n" + "Address: " + .... //whatever you want to print.
    }
    
  3. 每当您需要打印学生的详细信息时,请将其传递给println方法:

    System.out.println(obj); //where obj is a Student object.
    

答案 1 :(得分:0)

  • Stundent班级覆盖toString()方法,例如:

    @Override
    public String toString() {
        return "Stundent [ Name: " + name + ", Address: " + address + ", Major: " + major + ", GPA: " + gpa + " ]";
    }
    
  • 并修改您的printStudents()方法,如下所示(您的步骤6):

    private static void printStudents(final Student[] s) {
        System.out.println();
        for (final Student student : s) {
            System.out.println(student);
        }
    }
    
  • 然后您的输出应如下所示:

  

Stundent [名称:姓名1,地址:Addr1,专业:Major1,GPA:3.0]
  Stundent [名称:姓名2,地址:Addr2,专业:Major2,GPA:3.5]

现在您看到将隐式调用toString()方法。