比如我定义了一个StringBuffer对象strA,StringBuffer strA = new StringBuffer("haha");
再定义一个字符串,strB = "zaza";
然后strA.append("strB"),再去读strA的时候任然只能读出haha,append()方法根本没有把strB数据添加到strA中,
大家遇到这种情况一般都是哪里有问题呢?希望大家讨论讨论,我最近就遇到了这个问题。
------解决方案--------------------
------解决方案--------------------
StringBuffer strA = new StringBuffer("haha");
StringBuffer strB = "zaza";
strA=strA.append(strB);//这里写错了,呵呵
System.out.println(strA);
strA.append("strB");的返回值是一个字符串引用,你把这个引用重新赋给strA就可以了。(感觉不是在原来的String上追加的,而是复制到了另外一个里面。)
------解决方案--------------------
经过测试,无楼主上述问题。
1.数据是否传到该函数内
2.是否能匹配switch
- Java code
public class Test { public static void main(String args[]){ TestStringBuffer tsb = new TestStringBuffer(); String s= new String("abc"); tsb.setAsb(s); System.out.println(tsb.getAsb()); }}class TestStringBuffer{ private StringBuffer sb; public TestStringBuffer(){ this.sb = new StringBuffer("数据"); } public String getAsb() { return this.sb.toString(); } public void setAsb(String s){ this.sb.append(s); }
------解决方案--------------------
没有这种情况的吧
- Java code
public class Test{ public static void main(String[] args) throws Exception { StringBuffer str1 = new StringBuffer("aaa"); String str2 = "bbb"; str1.append(str2); System.out.println(str1.toString()); }}