📅  最后修改于: 2023-12-03 15:29:46.280000             🧑  作者: Mango
在C#中,字符串反转是一个常见的编程任务,它可以用几种不同的方式来实现。在本文中,我们将探讨一些用C#字符串反转的方法。
长度为n的字符串可以通过以下代码反转:
public static string ReverseString(string str)
{
char[] charArray = str.ToCharArray();
int len = str.Length - 1;
for (int i = 0; i < len; i++, len--)
{
charArray[i] ^= charArray[len];
charArray[len] ^= charArray[i];
charArray[i] ^= charArray[len];
}
return new string(charArray);
}
该方法使用一个for循环来迭代字符串的前一半,将其与后一半字符交换。
StringBuilder是一个非常有用的类,它可以用于创建可变字符串。以下代码演示了如何使用StringBuilder反转字符串:
public static string ReverseString(string str)
{
StringBuilder sb = new StringBuilder(str.Length);
for (int i = str.Length - 1; i >= 0; i--)
{
sb.Append(str[i]);
}
return sb.ToString();
}
使用LINQ将字符串反转也是一种非常流行的方法,如下所示:
public static string ReverseString(string str)
{
return new string(str.Reverse().ToArray());
}
该方法首先调用str.Reverse()方法返回一个IEnumerable
在本文中,我们介绍了三种C#字符串反转方法。除了使用循环迭代,我们还介绍了使用StringBuilder和LINQ的方法。最终选择哪个方法主要取决于实际需要和代码简洁度。