private String time = " "
改为
private String time=null改为null也是同样的意思吧,图为源代码
null相当于真空,“”就像是我们平时的空气
String str = null ; 表示声明一个字符串对象的引用,但指向为null,也就是说还没有指向任何的内存空间;
String str = ""; 表示声明一个字符串类型的引用,其值为""空字符串,这个str引用指向的是空字符串的内存空间;
不同意思, 当你使用 null
时会报空指针异常, 而 ""
不会
null一般针对的是指针判空
“” 一般是字符串判空
2个还是有区别的
一般在项目中,还是建议使用private String time = " ";比较合适。
不能,null,代表空 啥都没有,有可能导致 空指针异常 “”代表的是一个String类型的字符串 ,只不过这个字符串啥都没有 是空字符串
private String time = " ";
//将空的字符串赋值给time,在这种情况下,time.length( )相当于 "".length( ) ,其值为0。
private String time=null;
//将null赋值给time,在这种情况下,time.length( )相当于null.length( ),会报NullPointerException错误。
两种赋值方式并不是一回事。
用心回答每个问题,如果对您有帮助,请采纳答案好吗,谢谢!
区别还是很大额 完全不是一回事儿,打个比方 ,某人死亡和某人失踪了 失望就代表=null 失踪则代表=""
不建议使用null,在实体类里面可以不用初始化啊
String 是非基本类型 是对象
对象可以是null 但是“”表示的是空
空和null 不是一样的概念
一看就知道你是做安卓的,找解决办法,首先你得知道,你是要解决什么问题,或者说为什么要解决?
在这里,我预测你是想优化启动速度,那么我直接告诉你就是直接设为null就行,
null都是判断一个对象是否为空的,你赋值null估计会报空指针异常
string初始化用""就OK了
null表示对象为空,而""表示的对象不为空,只是空字符串而已
肯定不行啊!!!!!
必须不行啊,null和“ ”是有区别的。
String 类型是引用数据类型 如果将它设置为null 这就表示它在内存中没有指向任何内存空间 但是 如果将它设置为“” 这是一个空字符串 他在内存里面是有空间的 但是他的内容为空 主要区别是 一个有内存空间 一个没有
null就被gc回收了,“”不会