实现字符串反转的四种方法(C#)

来源:互联网 发布:淘宝店铺能出售吗 编辑:程序博客网 时间:2024/04/29 19:31
  //实现字符串反转的四种方法:使用委托传递四个方法。 //public delegate void StrReMethod(string original); //class StringReverse //{ // static void Reverse1(string original) // { // char[] arr = original.ToCharArray(); // Array.Reverse(arr); // string s = new string(arr); // Console.WriteLine(s); // } // static void Reverse21(string original) // { // int length = original.Length; // char[] arr = new char[length]; // for (int i = 0; i < (length & (~3)); i += 4) // { // arr[i] = original[length - i - 1]; // arr[i + 1] = original[length - i - 2]; // arr[i + 2] = original[length - i - 3]; // arr[i + 3] = original[length - i - 4]; // } // for (int i = length & (~3); i < length; i++) // { // arr[i] = original[length - i - 1]; // } // string s = new string(arr); // Console.WriteLine(s); // } // static void Reverse22(string original) // { // int length = original.Length; // char[] arr = new char[length]; // for (int i = 0; i < length; i++) // { // arr[i] = original[length - i - 1]; // } // string s = new string(arr); // Console.WriteLine(s); // } // static void Reverse3(string original) // { // int length = original.Length; // StringBuilder sb = new StringBuilder(length); // for (int i = length - 1; i >= 0; i--) // sb.Append(original[i]); // string s = sb.ToString(); // Console.WriteLine(s); // } // static void MethodChoice(string original, StrReMethod choose) // { // choose(original); // } // static void Main() // { // Console.WriteLine("Input a string:"); // string original = Console.ReadLine(); // Console.WriteLine("Please press the alphabet to choose a method of reversing string:/nA:Reverse1/nB:Reverse21/nC:Reverse22/nD:Reverse3"); // string s =Console.ReadLine(); // switch (s) // { // case "a": // case "A": // MethodChoice(original, Reverse1); // break; // case "b": // case "B": // MethodChoice(original, Reverse21); // break; // case "c": // case "C": // MethodChoice(original, Reverse22); // break; // case "d": // case "D": // MethodChoice(original, Reverse3); // break; // default: // MethodChoice(original, Reverse1); // break; // } // Console.ReadKey(); // } //}
原创粉丝点击