有沒有什麼辦法可以通過值將可變對象傳遞給java中的函數?如何通過值將可變對象傳遞給java
我真正想要的是將一個對象傳遞給一個方法,對它進行一些操作(改變它),並再次只使用該舊對象(而不是更改後的值)調用該方法。
這裏是一些示例:
{ MyObj obj = new MyObj(); obj.setName("name");
append(obj);
System.out.println(obj.name);
prepend(obj);
System.out.println(obj.name);
}
void append(MyObj obj){ obj.name+="1"; }
void prepend(MyObj obj){ String a = "1"; obj.name=a+obj.name; }
這段代碼的最後,我想輸出:
name1
1name
如果對象*發生了變異,您只會得到該輸出,不是嗎?你如何期待知道你想要在第一次調用`println` *之後忽略附加的「1」*? – 2010-12-06 12:12:04
這就是我想知道的。我怎樣才能做到這一點? – Anand 2010-12-06 16:14:59