我在书上读到(由Bruce Eckel的,第4版,第47页在Java编程思想),即null等于'\u000'.然后我想知道究竟是'\u000'什么意思.
根据我的理解,null无关紧要或没有任何东西.并且'\u000'与此定义相矛盾.
任何人都可以澄清这个问题null,并'\u000'?
wal*_*.ar 21
语言规范是定义null的地方,它说
还有一个特殊的null类型,表达式的类型为null,没有名称.由于null类型没有名称,因此无法声明null类型的变量或转换为null类型.空引用是null类型表达式的唯一可能值.null引用始终可以强制转换为任何引用类型.实际上,程序员可以忽略null类型,只是假装null只是一个可以是任何引用类型的特殊文字. - 文档链接(第4.1节)
和
null类型有一个值,null引用,由文字null表示,由ASCII字符组成.null文字始终为null类型. - 文档链接(第2.3节)
而是一个圆形的声音定义,但其值null是空引用本身 - 只是另一个指针.空引用的值并不是真正相关的,并且可能取决于实现者,但可能是零或某些其他不能与另一个对象地址混淆的值.
这里可能会引起混淆,因为有一个名为null字符值的字符值\u0000.这是char类型的默认值.
'\ u0000'十进制等效值为00 Char等效值为NUL.
来自Javadoc中的Character:http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/Character.html
static char MIN_VALUE
The constant value of this field is the smallest value of type char, '\u0000'.
Run Code Online (Sandbox Code Playgroud)
这是unicode值,在CHAR中等效于NULL,即它是NULL CHARACTER,而不是文字NULL.