尝试创建程序以反转字符串时出错

时间:2014-02-11 02:09:20

标签: c# string reverse

我在互联网上阅读的所有内容都让我觉得这个程序应该运行但我一直都会收到错误。错误说明:

  

“无法将类型'system.collections.generic.IEnumerable'隐式转换为'string'。存在隐式转换”。

我错过了什么吗?

class Program
{
    static void Main(string[] args)
    {
        string entry;

        Console.Write("Input String: ");
        entry = Console.ReadLine();

        entry = entry.Reverse();
        //Error occurs here ^             

        Console.Write(entry);

        Console.ReadKey(); 
    }
}

1 个答案:

答案 0 :(得分:5)

entry.Reverse()的调用会为您提供一系列字符。

您可以使用接受字符数组的字符串构造函数来存储值。

var myReversedString = new string(entry.Reverse().ToArray());

或者只是将其写入控制台:

Console.Write(entry.Reverse().ToArray());

WriteLine()方法有很多重载,并且可以接受许多不同的参数类型,但列表不是其中之一。所以它使用接受object的重载,然后在其上调用ToString(),输出类名...所以你看到类似的东西:

System.Linq.Enumerable+<ReverseIterator>d__a0`1[System.Char]