C#基础-054 自己实现的一些字符串系统方法

来源:互联网 发布:mac系统安装steam 编辑:程序博客网 时间:2024/05/21 10:14
 static void Main(string[] args)        {            /*EndsWith()               StratsWith()              indexOf()              Substring()              ToCharArray()              ToUpper()              ToLower()              Trim()              TrimStart()              TrimEnd()              Join()              */            Console.WriteLine("*************MyStartsWith*****************");            string str5 = "VNC";            Console.WriteLine(MyStartsWith(str5,"V"));            Console.WriteLine("****************MyEndsWith*****************");            string str4 = "中国近代史纲要";            Console.WriteLine(MyEndsWith(str4, "代史纲要"));            Console.WriteLine("*************MyIndexOf*****************");            Console.WriteLine(MyIndexOf(str4,"史"));//从零开始,从左到右的索引值            Console.WriteLine("*************MySubstring*****************");            Console.WriteLine(MySubstring(str4,2,2));            Console.WriteLine("*************MyToCharArray*****************");            string str0 = "agar32dfh打飞机比较";            char[] arr = MyToCharArray(str0);            for (int i = 0; i < arr.Length; i++)            {                Console.Write(arr[i] + " ");            }            Console.WriteLine();            Console.WriteLine("*************MyToUpper*****************");             str0 = "aSADFsadagsg";            str0 = MyToUpper(str0);            Console.WriteLine(str0);            Console.WriteLine("*************MyToLower*****************");            str0 = MyToLower(str0);            Console.WriteLine(str0);            Console.WriteLine("************MyTrim*****************");            str0 = "  时  建         ";            string str = MyTrim(str0);            Console.WriteLine(str.Length + "  " + str);            Console.WriteLine("************MyTrimStart*****************");            char[] arr1 = str0.ToCharArray();            string st = MyTrimStart(arr1);            Console.WriteLine(st.Length + "  " + st);            Console.WriteLine("************MyTrimEnd*****************");            st = MyTrimEnd(arr1);            Console.WriteLine(st.Length + "  " + st);        }        static bool MyEndsWith(string str1, string str2)        {            for (int i = str1.Length - str2.Length; i < str1.Length; i++)            {                if (str1[i] != str2[i - str1.Length + str2.Length])                {                    return false;                }            }            return true;        }        static bool MyStartsWith(string str1, string str2)        {            for (int i = 0; i < str2.Length; i++)            {                if (str1[i] != str2[i])                {                    return false;                }            }            return true;        }        static int MyIndexOf(string str1, string str2)        {            int start = 0;            for (int i = 0; i < str1.Length; i++)            {                if (str1[i]==str2[start])                {                    for (int j = 0; j < str2.Length; j++)                    {                        if (str1[i+j]!=str2[j])                        {                            return -1;                        }                    }                    return i;                }            }            return -1;        }        static string MySubstring(string str,int startIndex,int len)        {            string retStr = string.Empty;            for (int i = startIndex; i < startIndex+len; i++)            {                retStr += str[i];            }            return retStr;        }        static char[] MyToCharArray(string str)        {            char[] arr = new char[str.Length];            for (int i = 0; i < str.Length; i++)            {                arr[i] = str[i];            }            return arr;        }        static string MyToUpper(string str)        {            string retStr = string.Empty;            for (int i = 0; i < str.Length; i++)            {                if (str[i]>='a'&&str[i]<='z')                {                    retStr += (char)(str[i] - 'a' + 'A');                    continue;                }                retStr += str[i];            }            return retStr;        }        static string MyToLower(string str)        {            string retStr = string.Empty;            for (int i = 0; i < str.Length; i++)            {                if (str[i] >= 'A' && str[i] <= 'Z')                {                    retStr += (char)(str[i] - 'A' + 'a');                    continue;                }                retStr += str[i];            }            return retStr;        }        static string MyTrim(string str)        {            string retStr = string.Empty;            int start = 0;            int end = 0;            for (int i = 0; i < str.Length; i++)            {                if (str[i] != ' ')                {                    start = i;                    break;                }            }            for (int i = 0; i < str.Length; i++)            {                if (str[str.Length - i-1] != ' ')                {                    end = str.Length - i - 1;                    break;                }            }                      return str.Substring(start,end-start+1);        }        static string MyTrimStart(char[] arr)        {            string str = string.Empty;            for (int i = 0; i < arr.Length; i++)            {                str += arr[i];            }            int start = 0;            for (int i = 0; i < arr.Length; i++)            {                if (arr[i] != ' ')                {                    start = i;                    break;                }            }            return str.Substring(start);        }        static string MyTrimEnd(char[] arr)        {            string str = string.Empty;            for (int i = 0; i < arr.Length; i++)            {                str += arr[i];            }            int end = 0;            for (int i = 0; i < str.Length; i++)            {                if (str[str.Length - i - 1] != ' ')                {                    end = str.Length - i - 1;                    break;                }            }            return str.Substring(0,end+1);        }        static string MyJoin(string sparator,params object[] arr)        {            string ret = string.Empty;            if (arr.Length>0)            {                ret = arr[0].ToString();            }                 for (int i = 1; i < arr.Length; i++)            {                ret += sparator+arr[i];                   }            return ret;        }
     static void Main(string[] args)        {            string ret = string.Join("_", "王垚", "亚东", "志帆");            Console.WriteLine(ret);            string ret1 = MyJoin("_", "王垚", "亚东", "志帆");            Console.WriteLine(ret1);        }
原创粉丝点击