public String toString()
    {
        String line = System.getProperty("line.separator");
        
        StringBuffer buffer = new StringBuffer();
 1       buffer.append(line).append("(").append(line);
        buffer.append("inaccessInfo=").append(this.getInaccessInfo()).append(line);
        buffer.append("productID=").append(this.getProductID()).append(line);
 2      buffer.append(")").append(line);
        
        return buffer.toString();
    }代码如上:
这段代码打印功能没问题。但是我用工具检测代码的时候(1,2)的位置报“avoid appending characters as string in stringbuffer.append”的错。因为我是小白啊,不懂什么我愿意,问高手,高手说把(1,2)地方的append("(")改成append(‘(’)就OK了。我试了下果然行。开始不知道为什么这样改啊。能求解吗?

解决方案 »

  1.   

    不用管他,照工具这样的提示,StringBuffer的append(String)这个方法还不需要提供了呢
      

  2.   

    public class Test{ public String toString() {
      String line = System.getProperty("line.separator");
       
      StringBuffer buffer = new StringBuffer();
      buffer.append(line).append("(").append(line);
      buffer.append(")").append(line);
       
      return buffer.toString();
      }
      
      public static void main(String []args){
       System.out.println(new Test().toString() );
      }}结果  :E:\>javac Test.javaE:\>java Test(
    )
    E:\>
    没有报什么错误信息 啊 ,用ue编辑 的
      

  3.   

    char ch = 'a';
    String str = "HelloWorld";