2012-06-25 27 views

回答

4

字符串是字符数组的抽象。因此,即使是单字符字符串,它们在技术上也是引用类型(尽管与大多数引用类型不同,它们是不可变的)。另一方面,字符本身实际上是值类型。 (MSDN 1,MSDN 2

C# Replace Performance显示了这一点的性能暗示,其中使用字符数组比使用字符串数组快4倍。

+2

该框架根本不将字符串视为值类型。仅仅因为它们是不变的,并不能阻止它们被用作参考类型,贯穿始终。 –

+0

调用'StringBuilder.Append()'时,在适用时使用字符也有一个小的性能优势。 –

+0

@JonSkeet答复已更新。 – Arithmomaniac

相关问题