2014-02-11 54 views
2

在互联网上阅读的所有内容都会让我觉得该程序应该运行,但我一直收到错误。错误状态:尝试创建程序以反转字符串时发生错误

“不能将类型'system.collections.generic.IEnumerable'隐式转换为'字符串'。存在隐式转换”。

我错过了什么吗?

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(); 
    } 
} 

回答

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] 
+0

真棒,谢谢! –

相关问题