黑马程序员技术交流社区
标题:
C#中关于null的问题
[打印本页]
作者:
刘赛
时间:
2013-4-30 21:26
标题:
C#中关于null的问题
本帖最后由 刘赛 于 2013-4-30 22:06 编辑
string s="";//这时这个字符串的长度为0,但这个字符串是存在的
而我如果想得到一个没有长度的字符串时我曾如下定义一个字符串
string s=null;//string可以为null
请问null是个什么东东?是个值?是个引用?
作者:
殇_心。
时间:
2013-4-30 21:33
null是一个值。java中有3个值。 true false null
可以给引用数据类型赋值。
作者:
刘赛
时间:
2013-4-30 21:59
额 我说的是C#中的null
作者:
清朗的晨风
时间:
2013-4-30 22:01
null表示没有指定对象。。。。。
string s1="";表示s1指向一个空的字符串,长度为0,但不是 null。
string s2=null;不错,是可以的。。。表示s2没有指向任何字符串。、
不可以为null:值类型。如 int ,decimal,DateTime等,,,可以为null:引用类型。如 自定义类,string,大部分类都是。
作者:
刘赛
时间:
2013-4-30 22:02
确实 string s=null;是可以的
作者:
刘赛
时间:
2013-4-30 22:04
null既不是值也不是引用而是一个指向 这样理解对吧?
作者:
闫常国
时间:
2013-4-30 22:08
string s=null,表明s指向的是一个空引用,没有开辟内存空间;而string s=""则表示,在内存中为s开辟了一块内存空间,只不过里面什么都没有,是空的。
作者:
陈晖
时间:
2013-4-30 22:15
""指的是空字符串,存在的,等同于string.Empty,字符串指的就是0个或1个或多个字符。
当时null是不知道的意思,字符串未初始化就是null,string str;此时str就是null。
:)
作者:
HM朱百青
时间:
2013-4-30 22:19
null就是不知道! 空表示的是没有!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2