string r = "123-456-7".Replace("-", String.Empty);
Для .Net 1.0 String.Empty не займет дополнительного места в куче, но для "требуется" память в куче и ее адрес в стеке, что приводит к большему количеству кода сборки. Следовательно, String.Empty быстрее, чем "".
Также String.Empty означает отсутствие ошибок опечатки.
Шон Брайт, спасибо тебе за ответ. Мне интересно знать, почему я делал то же самое, но вместо того, чтобы использовать .Replace(".", String.empty), я делал .Replace('.', String.empty) и получал ошибку. В любом случае ваш ответ работал отлично.
Ответ 7
Используйте String.Empty или null вместо ", так как" " создаст объект в памяти для каждого вхождения, а другие будут повторно использовать один и тот же объект.
Ответ 8
Любой из вышеперечисленных методов, на мой взгляд, хорош, тогда как если вы занимаетесь какой-то сложной операцией, лучше подумайте о регулярном выражении, это действительно здорово.