在Java中将StringBuilders传递给方法似乎是通过引用传递但在C#中它似乎是通过值传递,是这样的吗?你认为它只适用于ref关键字吗?总体上有什么不同?
答案 0 :(得分:4)
StringBuilder
是一个对象,因此无论您是通过引用还是通过值传递引用,都无关紧要。 Java只有pass-by-value。如果您通过引用传递对它的引用,您可以从方法更改原始引用,这不是唯一的区别。无论您是通过值还是通过引用发送对它的引用,您引用的对象始终会更改。
为什么你认为有区别?你有任何示例代码似乎表明存在差异吗?