gpt4 book ai didi

c# - 返回新字符串与 .ToString()

转载 作者:太空狗 更新时间:2023-10-29 21:31:08 25 4
gpt4 key购买 nike

采用以下代码:

    public static string ReverseIt(string myString)
{
char[] foo = myString.ToCharArray();
Array.Reverse(foo);
return new string(foo);
}

我知道字符串是不可变的,但我不明白的是为什么需要调用一个新的字符串

return new string(foo);

代替

return foo.ToString();

我不得不假设它与重新组装 CharArray 有关(但这只是一个猜测)。

两者之间有什么区别?您如何知道何时返回新字符串而不是返回表示当前对象的 System.String?

最佳答案

很简单,因为在 char 数组上调用 ToString() 可以得到

System.Char[]

尝试

    char[] ca = "Hello world".ToCharArray();
Console.WriteLine("{0}", ca);

你没有得到 Hello World

另外 调用 Array.Reverse 来反转字符串是个坏主意,Tony and Jon mention it in their - now famous - Stack Overflow Presentation

关于c# - 返回新字符串与 .ToString(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2585826/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com