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

C#反转字符串效率最高的方法

2011-03-06 14:57 561 查看

Reverse Method

private string Reverse(string original){

char[] arr = original.ToCharArray();

Array.Reverse(arr);
return new string(arr);

采用stringbuild

public static string Reverse(string str)

{

if (string.IsNullOrEmpty(str))

{

throw new ArgumentException("参数不合法");

}

StringBuilder sb = new StringBuilder(str.Length);

for (int index = str.Length - 1; index >= 0; index--)

{

sb.Append(str[index]);

}

return sb.ToString();

}

递归方法

using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication2
{
class Program
{
//递归逆序字符串
private static String RecursionReverse(String str)
{
if(str.Length==1)//当仅剩下最后一个字母时
return str;
else
{

String strFist=str.Substring(0,1);//得到第一个字母
String strCut=str.Substring(1);//去掉第一个字母的部分
String strReverseNext;//经过递归逆序后的字母
strReverseNext = RecursionReverse(strCut);//此处逆序递归调用
return strReverseNext+strFist;//逆序的原理是反过来拼接

}
}

static void Main(string[] args)
{
String str = "I Iove you bao bao";
String strReverse;
strReverse = RecursionReverse(str);
Console.WriteLine(strReverse);
Console.ReadLine();
}

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: