public String tostring() {
String str = "(";
if (this.n != 0) {
for (int i = 0; i < this.n - 1; i++)
str += this.table[i].toString() + ",";
str += this.table[this.n - 1].toString();
}
return str + ")";
}
str += this.table[i].toString() 这一行后面不加.toString()也是可以的呀 加了也不报错 输出的结果都一样
  

解决方案 »

  1.   

    要看你的table[i]是什么类型,如果它已经有toString()方法会自动调用的
      

  2.   

    Object的,我没有写。toString的方法 应该是系统的 就是不知道是做什么的
      

  3.   

    一个字符串和另一个对象直接用 "+" 相加的话,不管这个字符串在什么位置,所有的东西一律用 toString() 转换成 String 后处理。所以如果你这个 "+" 中有字符串存在就无所谓,隐含地会 toString(),但如果中间 + 的都没有字符串的话,就要自己的明确的 toString()。
      

  4.   

    如果输出对象的话,会自动调用toString方法的。
    System.out.println(object)
    ==
    System.out.println(object.toString())
      

  5.   

    Ding....现在才知道...这是还没尝试过..学习
      

  6.   

    发现你的tostring()怎么S是小写的?
    楼主是不是没达到自己想要的结果?改成大写吧!
      

  7.   

    哦 humanity说的我明白了 不过我有个疑问呀 什么情况下+没有字符串呢 一定要用到.toString() 能否解答下啊 先谢谢了
      

  8.   

    A+B -->A、B都不是字符串
      

  9.   

    str为String,有+号则会调用toString()方法