黑马程序员技术交流社区

标题: 关于“空”的问题 [打印本页]

作者: popoluno    时间: 2013-6-16 14:45
标题: 关于“空”的问题
下面几个都表示空吗?" "、null、Empty、0、Nothing   有何区别与联系,求详细解释
作者: 陈壹    时间: 2013-6-16 16:04
对于声明后未赋值的数值类型变量,它们的默认值为0;

      对于声明后未赋值的字符串变量,则缺省值为空字符串"";

      对于Null关键字说明变量不包含有效数据,对于引用类型初始化为null时,则表示未实例化,即没有申请存放数据内存空间,但申请了引用内存空间,并保存该引用。同时它是将Null值显式地赋值给变量的结果,也可能是包含Null的表达式之间进行运算的结果。

      Empty关键字表示未初始化的变量的缺省值。

      Nothing关键字用于将对象变量从实际对象中分离开来

作者: 高腾    时间: 2013-6-16 16:04
" "、null、Empty、0、Nothing   
第一个里面有空格的话,则表示一个值为空格的字符串,没空格的话和第三个Empty一样(类似判断IsNullOrEmpty)
empty是分配了内存空间,但是是一个长度为零的字符串
第二个null是表示没有引用,没有分配内存空间,一般针对引用类型而言
第四个的话就是一个int类型的值,值是0,和其他int类型的值一样
至于最后一个没见过,我想应该跟empty差不多吧,因为意思上差不多...
作者: 陈壹    时间: 2013-6-16 16:07
高腾 发表于 2013-6-16 16:04
" "、null、Empty、0、Nothing   
第一个里面有空格的话,则表示一个值为空格的字符串,没空格的话和第三个 ...

:funk:话说你这技术分长的真快。。。估计明天就能到25了
作者: y96352    时间: 2013-6-16 16:16
Null是一个象String一样的变量类型,它表示一个没有合法数据的变量。
Empty是一个象String一样的变量类型,它表示了一个还没有进行初始化的变量。
Nothing这是一个指向空对象的对象引用。将对象引用设置为Nothing,就释放了那个对象。
“”表示意义跟EMPTY差不多,是一个未被赋值的的变量。
0就是数值类型未被赋值时默认的数值,比如建立一个数组 但没有赋值,数字里面的值都是默认为0



作者: 高腾    时间: 2013-6-16 18:00
陈壹 发表于 2013-6-16 16:07
话说你这技术分长的真快。。。估计明天就能到25了

呵呵,我先也以为技术分好难弄
结果两天就快二十分了
还是blog难写一些

多回答问题 问问题 技术分就涨得快




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2