null与空字符串("")的区别
Mytextbox.Text ="";
mypassword.Password ="";
mylistbox.SelectedItem =null;
null与空字符串的区别到底是什么,我原本以为是一样的,但是将上面的空字符串("")换成null后就出现错误,请各位给小弟点详解,最好是常用时候的注意事项
------解决方案--------------------不一样
“”是会分配空字符串长度的内存
null不分配内存
------解决方案--------------------null!=""
null表示未指向任何对象
而"",表示一个没有内容的字符串
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------绝非内存占用多少的差别。内存占用多少,在这里有多大意义?
null表示没有引用任何对象,而空字符串表示的是一个实际一致的对象。
这就好像用一个int?表示人的年龄,其值为null表示“不知道、不确定、不关心”,跟值为0完全不同的意思。使用0作为其值是有歧义的。
------解决方案--------------------
------解决方案--------------------听别人说:
String类中有个pData“指针”。
为【null】时,其值为0.即空指针)
为【“”】时,其值为'\0',即文本结束符。
------解决方案--------------------+1
------解决方案--------------------无语,建议去看看
http://topic.csdn.net/u/20100723/16/13f31adc-f783-492c-b77d-95c887b3db8b.html?82178