55问答网
所有问题
java的String=a; a==null和a.equals(null)这两个判断有什么区别
如题所述
举报该问题
推荐答案 2014-01-27
a==null;这个里面的a 是String对象的引用,(就相当于c++的指针),a==null 是判断这个引用a是不是指向一个String对象。
a.equal(null) 这个是判断a这个引用所指向的String对象的内容是不是为空。a只是String对象的引用而已。
追问
"String对象的内容是不是为空",是指什么,“ ”这样算是空吗?还是哪种表达才是空呢?
追答
String类型可以看做字符数组,"String对象的内容是不是为空"就是指这个字符数据是不是为空
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://55.wendadaohang.com/zd/LI484IGeeQ4QFL8eFQ.html
其他回答
第1个回答 推荐于2017-09-13
首先明确的一点,String的equals方法默认是重写了Object类的方法,具体是实现是
public boolean equals(Object paramObject) {
if (this == paramObject) {
return true;
}
if (paramObject instanceof String) {
String str = (String) paramObject;
int i = this.count;
if (i == str.count) {
char[] arrayOfChar1 = this.value;
char[] arrayOfChar2 = str.value;
int j = this.offset;
int k = str.offset;
while (i-- != 0) {
if (arrayOfChar1[(j++)] != arrayOfChar2[(k++)])
return false;
}
return true;
}
}
return false;
}
也就是说,对于a.equals(null)来说,第一步也会判断this == null,这里的this就是a。上面的代码已经说明,当equals传入的参数是null的时候,和a==null的效果是一样的。
但是如果传入的参数不是null,那么a==b只能判断a和b是否指向同一个java对象,而a.equals(b)能判断a和b指向的java对象的字符串内容是否一样。
本回答被提问者和网友采纳
第2个回答 2014-01-27
a==null,判断引用变量a是否是空引用;a.equals(null)判断字符串a内容是否是空
第3个回答 2014-01-27
对于equals和==的区别你可以百度一下
通常对于字符串比较应该使用equals,对于数值的比较用==
相似回答
a==null和a.equals(
"null"
)有什么区别
?
答:
String
a="XXX"
;equals
是值比较,==是比较内存 类似这样的声明表明已经分配了空间,再用
a==null
来判断,显得多余 ""是空字符串,但是也是有内存空间的,而null是空对象。对于字符串,用
==和
用equals实际上是一样的。完全没有必要得用两次判断。你可以这么理解:A==B,比较句柄,就是比较变...
a==null和a.equals(
"null"
)有什么区别
?
答:
a==null,是说a这个变量还没有内容,
也就是a为空a.equals("null")为true是说字符串a的内容为“null”这个字符串
。应该如此。
Java
空字符串
与null的区别和判断
字符串是否为空的方法
答:
1、类型 null表示的是一个对象的值,而并不是一个字符串
。例如声明一个对象的引用,String a = null ;""表示的是一个空字符串,也就是说它的长度为0。例如声明一个字符串String str = "" ;2、内存分配 String str = null ; 表示声明一个字符串对象的引用,但指向为null,也就是说还没有...
java
字符串为空的问题
答:
①““.
equals(
str
)这个
是获取到str的值,和""比较,纯粹的值得比较 如果Str 是“aa”,那么自然不等于 ②”null“.equals(str)就是用一个值为null的字符串和str 的值做比较!③str
==null
,str 本身引用对象是否是null ,str没有初始化时那么就是一个null 对象 ...
null和
"",
==
与
equals
,
这两个有什么区别
?
答:
if(str1.
equals(
"")||str1
==null)
{ //如果str1没有值,则返回false } 正确的写法是 if(str1==null||str1.equals("")){ //先判断是不是对象,如果是,再判断是不是空字符串 } [
java
] view plaincopy
String
name = request.getParameter("name");if(filmname==null){ System.out...
大家正在搜
equals和==的区别
字符串null和null的区别
equals判断null
java中equals是什么意思
java判断字符串为null
java判断是否为null
java的equals比较前后
java的equals方法
java servlet
相关问题
java中*=是什么意思?比如:i*=n
请问 java中"% "与 "/ "之间的区别?
java中&=是啥意思?怎么用
java-=是什么意思
java 中/**是什么
java中<>
JAVA中!