zoukankan      html  css  js  c++  java
  • 【转】c#实现字符串倒序的n种写法

    其中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();
    }
  • 相关阅读:
    背包解法
    第十六周周总结
    软件工程个人课程总结
    学期课后个人总结
    spring事务
    梦断代码03
    团队冲刺的第二十四天
    第十五周周总结
    百度输入法评价
    找到水王
  • 原文地址:https://www.cnblogs.com/zhangbaochong/p/4802306.html
Copyright © 2011-2022 走看看