我正在尝试编写一个函数来检查字符串是否为回文,并使用此示例,我正在尝试使用递归匿名函数来反转字符串:
static Boolean checkPalindromeAnonRec(string str)
{
str = str.ToLower().Replace(" ", String.Empty);
Func<string, string> revStr = null;
revStr = delegate(string s)
{
if (s.Length > 1)
{ return revStr(s) + s[0]; }
else
{ return s; }
};
return (str == revStr(str));
}
但是每次我运行它时,我都会得到一个StackOverflowException
. 这对我来说并不明显,为什么,有什么想法吗?