字符串String对象为" "和null有什么区别
我从页面中得到一个username属性,想判定下是否有值 我是写username==null或者username.equal("")呢?""和null二者有什么区别
[解决办法]
null是指username对象不存在即未分配内存;为“”时对象已创建但无数据(只有\0)
[解决办法]
if(username==null||username.equal("")){输入为空;}
[解决办法]
为了保险最好都写
[解决办法]
字符串String要是用比较的话,建议使用equals比较,这样比较的是变量在内存空间的值,而“==”比较的是指向内存空间的地址,所以不能用“==”来比较。还有就是理解 null和“”的含义,null的意思是为空,就是说没有分配内存空间,而 “”的意思是说分配了内存空间,但是没有赋值。
[解决办法]
String str = "";表示内存中存在str,只是这个str没有值。。
String str = null;表示内存中根本就不存在str,更不用说有值了。。
[解决办法]