前言 简单整理一下string.empty 和 "" 还有 null的区别. 正文 首先null 和 string.empty 还有 "" 是不一样的. null 关键字是表示不引用任何对象的空引用的文字值. null 是引用类型变量的默认值. 我们编辑高级语言的时候就可以表示的含义就是不引用任何对象的空引用. 但也不能完全这样说,应该说在语法含义上是这样的,具体的肯定指向某个引用. string.empty 和 "" 实际上是一样的. // T…
前言 重学c#系列继续更新,简单看一下字典的源码. 看源码主要是解释一下江湖中的两个传言: 字典foreach 顺序是字典添加的顺序 字典删除元素后,字典顺序将会改变 正文 那么就从实例化开始看起,这里我们假定key 是string 情况下开始看. 一般我们之间实例化: Dictionary<string, string> keys = new Dictionary<string, string>(); 那么看下内部的实例化是怎么样的. public Dictionary() :…
原文C# 中 string.Empty."".null的区别 一.string.Empty 和 "" 1.Empty是string类中的一个静态的只读字段,它是这样定义的: // Represents the empty string. This field is read-only. public static readonly string Empty; 也就是说 string.Empty 的内部实现是等于 "" 的.二者在优化方面稍有差别,…
1.C#中string.Empty.""和null 之间的区别 (http://blog.csdn.net/henulwj/article/details/7830615)…
一.string.Empty 和 ""                                                           原文1   原文2 1.Empty是string类中的一个静态的只读字段,它是这样定义的: // Represents the empty string. This field is read-only. public static readonly string Empty; 也就是说 string.Empty 的内部实现是等于…
前言 什么是c#呢? 首先你是如何读c#的呢?c sharp?或者c 井? 官方读法是:see sharp. 有没有发现开发多年,然后感觉名字不对. tip:为个人重新整理,如学习还是看官网,c# 文档天下无敌. 正文 c#和java一样,他们之间有很多故事,尤其是官司,c#同样是一门面向对象的语言,同样也支持面向组件编程. 复制一下面向对象和面向组件编程的概念: 面向对象技术的基础是封装--接口与实现分离,面向对象的核心是多态--这是接口和实现分离的更高级升华,使得在运行时可以动态根据条件来选…
前言 对上节异常的补充,也可以说是异常使用的注意事项. 正文 减少try catch的使用 前面提及到,如果一个方法没有实现该方法的效果,那么就应该抛出异常. 如果有约定那么可以按照约定,如果约定有歧义,那么还是要抛出异常. 我们知道使用try catch 其实是要消耗性能的,那么是否能避免使用try catch呢?或者减少使用try catch呢? 我们使用api的时候,知道http制定了一套错误码,那么我们是否能使用错误码返回来做一个约定的呢? 答案是否定的,且不论我们的业务的不同,错误码制…
前言 用户觉得异常是不好的,认为出现异常是写的人的问题. 这是不全面,错误的出现并不总是编写程序的人的原因,有时会因为应用程序的最终用户引发的动作或运行代码的环境而发生错误,比如你用android4去安装现在的微信,或者说我们写的android程序不需要兼容android4,需要的效果就是在android4上安装然后崩溃. 我们编写代码的人需要做的是预测程序中出现的错误,并进行相应的处理,甚至有时候我们应该主动抛出异常. 无论编写的代码技术多么强,程序都必须处理可能发生的错误,比如说做客户端的时…
前言 接着异常七后,因为以前看过盛派这块代码,正好重新整理一下. 正文 BaseException 首先看下BaseException 类: 继承:public class BaseException : ApplicationException 这个ApplicationException 前文中提及到,文档地址:https://docs.microsoft.com/zh-cn/dotnet/api/system.applicationexception?view=netcore-3.1 这里…
一.String.Empty String类的静态只读字段.定义如下: public static readonly string Empty; 二.“” 被赋值为“”的字符串变量,会在栈上保存一个地址(占4个字节),该地址会指向 同时在堆上分配一个长度为0的内存空间(存放字符串的值). 三.null 被赋值为null的变量,会在栈上保存一个地址(占4个字节),该地址不会指向堆上的任何内存空间(1.初始赋值时不分配内存:2.将原来所指的内存空间变为不可达). 总结: 1.String.Empty…