当我打印我的类的实例时,该实例被引用为" null"因为我返回" null",我如何格式化toString类,以便它返回我在这个函数中实际写的内容:
public String toString()
{
System.out.print(this.coefficient);
for(int i=0; i<26;i++)
{
if(degrees[i] == 1)
{
System.out.print(variables[i]);
}
if(degrees[i]>1)
{
System.out.print(variables[i] + "^" + degrees[i]);
}
}
System.out.println('\n');
return null;
}
例如,它必须返回"m1 = 13a^2b^3"
(它是一个多项式)
而是返回"13a^2b^3 m1 = null"
答案 0 :(得分:1)
不是直接打印String
的每个组件,而是使用StringBuilder
连接它们:
public String toString()
{
StringBuilder s = new StringBuilder();
s.append(this.coefficient);
for (int i = 0; i < 26; i++)
{
if (degrees[i] == 1)
{
s.append(variables[i]);
}
else if (degrees[i] > 1)
{
s.append(variables[i]).append('^').append(degrees[i]);
}
}
return s.toString();
}
答案 1 :(得分:-1)
使用String Builder。 无论您在哪里使用System.out.println
而不是那个
StringBuilder temp=new StringBuilder();
temp.append();// Add here the content what you are printing with Sysout
// at the end
return temp.toString();