温故知新——CSharp

温故知新——CSharp

关于

平时在工作学习中查找到的关于C#的小技巧,持续记录,温故知新。

技巧

  1. 使用Parallel.For()或者Parallel.Foreach()提高循环的效率;
  2. 使用PLINQ.AsParallel() 的语法来提高LINQ的运行效率,其中AsParallel() 不表示一定会使用平行运算,其执行的数目会由1、2、4、8等增加,另外AsParallel()之后可以接上另一个方法WithExecutionMode(ParallelExecutionMode.ForceParallelism),表示要强制使用平行运算;
  3. 在单元测试中,获取当前的执行路径方法:Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location)
  4. 当重新丢出Exception时,请使用throw,而非throw ex用以保留call stack信息;
  5. 避免catch错误,却不做任何事情;
  6. 在判断string是否为空白时,避免使用与String.Empty或" "比较,改用String.Length = 0,效率更高;
  7. 表示空字串时,避免使用" "改用使用string.Empty ,效能较佳;
  8. 动态字串串接时(无法于当下串接所有内容),避免使用"+",改用StringBuilder,效能较佳;
  9. string忽略大小写比较时,避免使用ToLower(),改用string.Compare(),效能较佳,用法如下:string.Compare(targetStringA,"target string B",true) == 0
  10. 静态字串串接时,利用”@”来输入多行文字及避免跳脱字元;
  11. 使用string.Join()拼接字符串数组得到单个字符串;
  12. C#哈希表HashTableDictionary比较,添加数据时Hashtable快,频繁调用数据时Dictionary快。Dictionary<K,V>是泛型的,当K或V是值类型时,其速度远远超过Hashtable

后记

小伙伴们发现不对的地方及时指出,一起写出更好地C#代码。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
禁止转载,如需转载请通过简信或评论联系作者。