>Six Perfections 2009/04/27 (月) 04:30:09        [qwerty]
> public class test {
> 	public static void main(String[] args) {
> 		StringBuffer sb1 = new StringBuffer("aaa");
> 		StringBuffer sb2 = new StringBuffer("bbb");
> 		StringBuffer sb3 = new StringBuffer();
> 		StringBuffer sb4 = new StringBuffer();
> 		sb4=sb1;
> 		System.out.print("---stringchange実行前---" + "\n");
> 		System.out.print("sb1:" + sb1 + "\n"); 
> 		System.out.print("sb2:" + sb2 + "\n"); 
> 		System.out.print("sb3:" + sb3 + "\n"); 
> 		System.out.print("sb4:" + sb4 + "\n");
> 		System.out.print("\n");
> 		stringchange(sb1);
> 		sb4=sb1;
> 		System.out.print("---stringchange実行後---" + "\n");
> 		System.out.print("sb1:" + sb1 + "\n"); 
> 		System.out.print("sb2:" + sb2 + "\n"); 
> 		System.out.print("sb3:" + sb3 + "\n"); 
> 		System.out.print("sb4:" + sb4 + "\n");
> 		
> 	}
> 	static void stringchange(StringBuffer sbchange) {
> 		sbchange.append("xxx");
> 	}
> }
> <実行結果>
> ---stringchange実行前---
> sb1:aaa
> sb2:bbb
> sb3:
> sb4:aaa
> ---stringchange実行後---
> sb1:aaaxxx
> sb2:bbb
> sb3:
> sb4:aaaxxx

どうしても書き換えたいなら
元の文字列をreplaceするといいよ(;´Д`)内部の変更だから上手くいくはず
sbchange.replace( sbchange ,"xxx");
な感じかな?

参考:2009/04/27(月)04時27分18秒