C#中null和""的区别

string str = null 没有创建内存空间,str中存放的是空引用针;
 string str = "" 创建了内存空间,str中存放的是指向堆中的指针。 
简单地说: string str =""; 给你一张白纸; string str = null; 连白纸也没有。 
string.Empty就相当于""  一般用于字符串的初始化 比如: string a;  
Console.WriteLine(a);//这里会报错,因为没有初始化a   
而下面不会报错: string a=string.Empty;  Console.WriteLine(a);   
或者用于比较: if(a=="")  
if(a==string.Empty)  上面两句是一样的效果。  
string.Empty不分配存储空间 ""分配一个长度为空的存储空间 所以一般用string.Empty  
为了以后跨平台,还是用string.empty  
在 C# 中,大多数情况下 "" 和string.Empty可以互换使用。比如: string s = ""; 
string s2 = string.Empty;  
if (s == string.Empty) { //  }  if语句成立
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xinying888888

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值