如何让toString()返回一个复杂的对象?

时间:2014-02-24 04:53:37

标签: java string tostring

我需要创建一个toString()函数,为复杂对象Complex(3,2)返回字符串“3 + 2i”。

这就是我做过的,但是我得到了以下错误,我不知道这意味着什么。

从版本8开始,'this'仅作为接收器类型的参数名称,它必须是第一个参数。

public String toString()
{
    String s = ("%f + %fi",this.real,this.imaginary);

    return s;
}

任何人都可以帮我解决我的错误吗?

2 个答案:

答案 0 :(得分:5)

嗯,这不是Java。要格式化String,您必须使用String.format();

String s = String.format("%f + %fi", this.real, this.imaginary);

答案 1 :(得分:0)

您可以从String方法返回toString()内容。您必须使用override toString()方法。但你尝试的方式是错误的。您只能从String

返回toString()

你可以试试这个

 String s = String.format("%f + %fi",this.real,this.imaginary);