zoukankan      html  css  js  c++  java
  • 如果是除去末尾特定字符或字符串:TrimEnd方法性能优于Remove方法

    测试用例--除去末尾特定字符或字符串,Remove方法和TrimEnd方法的比较

    结论:

    如果是除去末尾特定字符或字符串:TrimEnd方法性能优于Remove方法

    具体测试用例如下:

                Stopwatch watcher = new Stopwatch();

    watcher.Reset();
    watcher.Start();
    int count = 1000000;
    List<string> strList = new List<string>();
    for (int i = 0; i < count; i++)
    {
    strList.Add(i.ToString());
    }


    #region 测试用例--除去末尾特定字符或字符串,Remove方法和TrimEnd方法的比较
    string result;

    #region Remove方法
    watcher.Reset();
    watcher.Start();
    StringBuilder builder = new StringBuilder();
    foreach (string item in strList)
    {
    builder.Append(item);
    builder.Append(',');
    }
    result = builder.Remove(builder.Length - 1, 1).ToString();
    Console.WriteLine("StringBuilder.Remove:{0}", watcher.ElapsedMilliseconds);
    #endregion

    #region TrimEnd方法
    watcher.Reset();
    watcher.Start();
    result = builder.ToString().TrimEnd(',');
    Console.WriteLine("StringBuilder.TrimEnd:{0}", watcher.ElapsedMilliseconds);
    #endregion

    /*************************************************
    * 测试用例:除去末尾特定字符或字符串,Remove方法和TrimEnd方法的比较
    * 结论:如果是除去末尾特定字符或字符串:TrimEnd方法性能优于Remove方法
    * 测试结果如下:(时间为毫秒)
    * --------------------------------------
    * 数据: | 10W | 100W | 1000W
    * --------------------------------------
    * Remove | 7 | 81 | 786
    * ---------------------------------------
    * TrimEnd | 0 | 12 | 108
    *
    */

    #endregion
  • 相关阅读:
    对线程的理解
    C#-设计模式-策略模式
    C#-设计模式-观察者模式
    C#-设计模式-模板方法
    C#-设计模式-适配器模式
    C#-设计模式-代理模式
    C#-设计模式-装饰模式
    C#-设计模式-简单工厂
    C#-设计模式-单例模式
    DotNet Core2.1 编写自己的中间件和后台服务
  • 原文地址:https://www.cnblogs.com/yank/p/2201822.html
Copyright © 2011-2022 走看看