对于空值的理解,上面已经有人说了,我还是补充几点吧 在JAVA 中,例如: String value = new String("JAVA"); 这样就为 value 分配了内存空间。 而String value = null; 只是有一个声明,而没有分配内存空间。在有的时候也许有人会这样写: ... String value ; while (true) { value = "JAVA"; if(value.equals(JAVA)) { break; } } ...这样是错的。必须在声明value的时候要么赋值,要么赋一个null
在JAVA 中,例如:
String value = new String("JAVA");
这样就为 value 分配了内存空间。
而String value = null;
只是有一个声明,而没有分配内存空间。在有的时候也许有人会这样写:
...
String value ;
while (true)
{
value = "JAVA";
if(value.equals(JAVA))
{
break;
}
}
...这样是错的。必须在声明value的时候要么赋值,要么赋一个null