string s = null 和 string s = “”的区别

string s = null; 表示一个空串,没有占用了空间,不在内存中开辟空间
string s = "";在内存中开辟空间,但空间中没有值(""也是一个字符串)表示一个空串,被实列化了,占用了内存空间
null 表示一个空引用,"" 表示一个空字符串,
string.Empty和“”类似,在内存中分配0个字节 
如果想声明一个初始值为空的字符串变量最好用 string str = string.Empty; 
时间: 2024-07-31 16:48:25

string s = null 和 string s = “”的区别的相关文章

String s;和String s=null;和String s="a";有什么区别?

String s;和String s=null;和String s="a";有什么区别?   针对这三种情况,使用out.println(s);的时候,第一个会出现异常,第二个会输出null.第三个则会输出a.   这是为什么呢?这三句声明语句,各自作了什么呢? 答: 第一个只是定义了一个String类型变量s,并没有给它赋初值,在Java中,默认在使用一个变量的时候必须赋予它初值(降低风险). 第二个和第三个都定义了String类型变量s,并赋予它初值,只不过第二个赋予的值为null

java中String a ; String a = null 和String a = ""的区别

String a; 申明一个string类型的 a,即没有在申请内存地址,更没有在内存任何指向引用地址; String a = null ; 申明一个string类型的 a,同时在内存里申请了一个地址,但是该地址不指向任何引用地址: String a = "" :申明一个string类型的 a,既在内存里申请了地址,该地址又指向一个引用该字符串的引用地址: 一般来说 字符串的使用 最好用String a = "" ;语句, 可以防止后面的程序因引用地址混乱而找不到的

C#中NULL,"",DBNULL,String.Empty,Convert.IsDBNull()的区别

C#中的空值的判断较麻烦,不象在VB6中那么简单,这些各种空值的判断和理解对不熟悉的人来说,可能很麻烦,现就我在使用过程中的一点体会和大家共同分享. (1)NULL null 关键字是表示不引用任何对象的空引用的文字值.null 是引用类型变量的默认值.那么也只有引用型的变量可以为NULL,如果 int i=null,的话,是不可以的,因为Int是值类型的. (2)DBNULL DBNull在DotNet是单独的一个类型,该类只能存在唯一的实例,DBNULL.Value,DBNull唯一作用是

【转载】String.Empty、string=”” 和null的区别

String.Empty是string类的一个静态常量: String.Empty和string=””区别不大,因为String.Empty的内部实现是: ? 1 2 3 4 5 6 7 8 9 10 11 12 public static readonly string Empty; //这就是String.Empty 那是只读的String类的成员,也是string的变量的默认值是什么呢? //String的构造函数 static String(){     Empty = "";

NULL,"",String.Empty三者在C#中的区别

(1)NULLnull 关键字是表示不引用任何对象的空引用的文字值.null 是引用类型变量的默认值.那么也只有引用型的变量可以为NULL,如果int i=null,的话,是不可以的,因为Int是值类型的. (2)""和String.Empty   这两个都是表示空字符串.只不过""理论上重新开辟内存空间,而String.Empty指向一处.不过优化器会优化的! string.Empty不分配存储空间, ""分配一个长度为空的存储空间,所以一般用

String.Empty、string=”” 和null的区别

String.Empty是string类的一个静态常量: String.Empty和string=””区别不大,因为String.Empty的内部实现是: 1 2 3 4 5 6 7 8 9 10 11 12 public static readonly string Empty; //这就是String.Empty 那是只读的String类的成员,也是string的变量的默认值是什么呢? //String的构造函数 static String(){     Empty = "";//

String.Empty,NULL和""的区别

String.Empty,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=”” 和null的区别

原文地址:http://www.cnblogs.com/fanyong/archive/2012/11/01/2750163.html String.Empty是string类的一个静态常量: String.Empty和string=””区别不大,因为String.Empty的内部实现是: public static readonly string Empty; //这就是String.Empty 那是只读的String类的成员,也是string的变量的默认值是什么呢? //String的构造函

【转载】NULL,"",String.Empty三者在C#中的区别

(1)NULLnull 关键字是表示不引用任何对象的空引用的文字值.null 是引用类型变量的默认值.那么也只有引用型的变量可以为NULL,如果int i=null,的话,是不可以的,因为Int是值类型的. (2)""和String.Empty   这两个都是表示空字符串.只不过""理论上重新开辟内存空间,而String.Empty指向一处.不过优化器会优化的! string.Empty不分配存储空间, ""分配一个长度为空的存储空间,所以一般用