您的位置:首页 > 编程语言 > C#

c# 实现字符串倒序的n 种写法

2009-01-07 17:09 330 查看
最简洁就是linq的写法,推荐。

// string concatenation with for loop
public string ReverseA(string text)
{
char[] cArray = text.ToCharArray();
string reverse = String.Empty;
for (int i = cArray.Length - 1; i > -1; i--)
{
reverse += cArray[i];
}
return reverse;
}

// Array.Reverse function
public string ReverseB(string text)
{
char[] charArray = text.ToCharArray();
Array.Reverse(charArray);
return new string(charArray);
}

// push/pop Stack<>
public string ReverseC(string text)
{
Stack resultStack = new Stack();
foreach (char c in text)
{
resultStack.Push(c);
}

StringBuilder sb = new StringBuilder();
while (resultStack.Count > 0)
{
sb.Append(resultStack.Pop());
}
return sb.ToString();
}

// LINQ
public string ReverseD(string text)
{
return new string(text.ToCharArray().Reverse().ToArray());
}

// StringBuilder
public string ReverseE(string text)
{
char[] cArray = text.ToCharArray();
StringBuilder reverse = new StringBuilder();
for (int i = cArray.Length - 1; i > -1; i--)
{
reverse.Append(cArray[i]);
}
return reverse.ToString();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: