博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
读书--编写高质量代码 改善C#程序的157个建议2
阅读量:6305 次
发布时间:2019-06-22

本文共 585 字,大约阅读时间需要 1 分钟。

    重新从图书馆将这本书借出来,看一遍似乎记不住,这次打算看一点就记录点,记录下自己容易忘记的知识点,便于记住。

    建议1:正确使用字符串:

          1    string str1= "helloworld" + 1;

          2    string str2 = "helloworld" + 1.toString()

          第二句比第一句好,因为第1句要讲int,装箱成string. 第二句调用非托管方法,效率高

          另外 StringBuilder一次分配16位的内存,当存储大于16个字符的时候,再加16,一直往后

          string.Format实际上调用了StringBuilder实现

    建议3: 区别对待强制转型与as和is

         强制转型如果失败会抛出异常,而as不会,失败就为null。is是用来判断类型的

   建议4:TryParse比Parse好

         因为TryParse失败的时候不会抛异常,而Parse会。异常处理会耗时些

   建议5:使用int?来确保值类型可以为null

      int? i = null

      等同于  Nullable<int> i = null;

      看到个以前没有见过的语法:  int j = i ?? 0;  如果i的HasValue为true,则将i 的value赋值给j;否则,就给j赋值为0

转载于:https://www.cnblogs.com/dengkun/p/3383294.html

你可能感兴趣的文章
DNS原理及其解析过程
查看>>
记录自写AFNetWorking封装类
查看>>
没想到cnblog也有月经贴,其实C#值不值钱不重要。
查看>>
【转】LUA内存分析
查看>>
springboot使用schedule定时任务
查看>>
[转] Entity Framework Query Samples for PostgreSQL
查看>>
XDUOJ 1115
查看>>
PHP学习(四)---PHP与数据库MySql
查看>>
模版方法模式--实现的capp流程创建与管理
查看>>
软件需求分析的重要性
查看>>
eclipse的scala环境搭建
查看>>
UVA465:Overflow
查看>>
HTML5-placeholder属性
查看>>
Android选择本地图片过大程序停止的经历
查看>>
poj 2187:Beauty Contest(旋转卡壳)
查看>>
《Flask Web开发》里的坑
查看>>
Python-库安装
查看>>
Git笔记
查看>>
普通人如何从平庸到优秀,在到卓越
查看>>
SLAM数据集
查看>>