为什么我在这种情况下打印出System.char []?

时间:2010-08-25 00:40:18

标签: c# string return-value

我想弄清楚我在这里做错了什么,但我似乎无法做到。我有这个方法,它接受一个字符串并反转它。但是,当我从调用方法打印出反向字符串时,我只得到“System.Char []”而不是实际的反向字符串。

    static string reverseString(string toReverse)
    {
        char[] reversedString = toReverse.ToCharArray();
        Array.Reverse(reversedString);
        return reversedString.ToString();
    }

2 个答案:

答案 0 :(得分:12)

在.NET中的ToString数组上调用T将始终返回"T[]"。您想要使用它:new string(reversedString)

答案 1 :(得分:6)

通过调用ToString,您只需获得每个类从object继承的默认实现。 .NET不能仅为char数组提供特殊实现;覆盖必须适用于所有类型的数组。

相反,您可以将数组传递给String的构造函数return new String(reversedString)