[問題] 關於StringBuffer與區域變數
Given:
public class Foo
{
public static void main(String[] args)
{
StringBuffer a = new StringBuffer("A");
StringBuffer b = new StringBuffer("B");
operate(a,b);
System.out.println(a + "," + b};
}
static void operate(StringBuffer x , StringBuffer y)
{
x.append(y);
y=x;
}
}
小弟執行後的結果是輸出:AB,B
但我有些搞亂為什麼b的值是B,而不是AB。
operate(a,b)之後,a會變成"AB",但b卻還是"B"
請各位前輩賜教,謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.122.181.131
討論串 (同標題文章)
以下文章回應了本文 (最舊先):
完整討論串 (本文為第 1 之 6 篇):