java中a.equal("b")和b.equal("a")有什么区别

java中a.equal("b")和b.equal("a")有什么区别

equal前面的是基准还是后面的是

a.equal("b")表示a这个string是否等于字符串b;
b.equal("a")表示b这个string是否等于字符串a;
如果你是想要判定a和b两个string对象是否相同,建议不要加括号,写成:
a.equal(b)和b.equal(a)这个比较好。
a.equal(b)和b.equal(a)表达式表达的意思是一样的,都是为了判定a和b两个string对象是否相同,但是,前者表示a对象不能为空,否则会报错,后者表示b对象不能为空,否则报错
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2016-11-21
判断字符串a和b是否相等可以用a.equals(b)或者b.equals(a),这两种方法效果都是一样的.
因为都是字符串类型.所以括号里面不用再加双引号.否则就会报错,因为加双引号之后那双引号之间的就是一串字符串
另外加一点."equals()"是判断对象.而"=="则是对象的值..本回答被提问者采纳
第2个回答  2019-04-27
在使用equals()方法时,建议将已知非null的变量放在前面,例如在比较一个字符串和一个表达式的时候,我们应该这样写:
"abc".equals(obj);
为什么要这么写呢?因为如果你把表达式obj放在前面,已知的“abc”放在后面,
obj.equals("abc");
obj有可能是null,这样就会抛出异常NullPointException。想想嘛,obj都是null了,它哪来的equals()方法,对不对?
如果没有十足的把握前置变量是非空的(即非null),最好将已知非空变量写在前面,要么就做异常处理。
第3个回答  2019-01-19
==始终是比较两个对象在内存中的引用地址,而equals方法则不是,如果没有重写object类中的equals方法,那么它也是比较两个对象在内存中的引用地址,重写了equals方法,比如String类,那么就是比较值是否相等
第4个回答  2007-09-14
呵呵.equal是指2者都相等的时候才返回true。其他的都为false。没有什么基准的。

java中a.equal("b")和b.equal("a")有什么区别
a.equal("b")表示a这个string是否等于字符串b;b.equal("a")表示b这个string是否等于字符串a;如果你是想要判定a和b两个string对象是否相同,建议不要加括号,写成:a.equal(b)和b.equal(a)这个比较好。a.equal(b)和b.equal(a)表达式表达的意思是一样的,都是为了判定a和b两个string对象是否...

a.equal(b)和b.equsal(a)区别
因此写成后者(即xxx.equals(str))的形式比较好。那个变量可能在意外情况下会为null的。除了以上这个区别,其它没什么了

String 型比较问题
我想楼主想问的应该是 "b".equals(a) 和 a.equals("b")的区别,两个都是进行字符串的比较,不过区别就是在变量a为Null的时候,上面的表达式结果为false 但是下面就是抛出NullPointerException 所以为了程序的安全,一般采用上面的写法

a.equal(b)与a=b的区别?
a=b指的是,让a取得和b一样的值 equals 和“==”才是 比较是否相等,但是也有区别 在JAVA 中 “equals()” 是内容(值)比较 而“==”比较的是对象(object)的地址\/指向(reference)

A equals B.的用法正确吗?
A equals B. 用法是正确的。句中equal是及物动词,后直接接宾语B。因主语A是第三人称单数形式,所以谓语动词用三单形式equals。A equals to B. 用法是错误的,应改为A is equal to B. be equal to是一个介词短语,固定用法,句中equal用作形容词,后面接介词to。因主语A是第三人称单数形式,...

equal在java中的用法
以下是几种常见的用法:1、对象的相等性比较:Java中的equals方法用于检查两个对象是否相等。这个方法是在Object类中定义的,被所有类继承。2、基本数据类型的相等性比较:在Java中,基本数据类型(如整数、浮点数、字符等)不能直接使用equals方法进行比较。3、字符串的相等性比较:Java中的字符串类型可以...

JAVA判断两个数字是否相同
改成用equal试试吧,把if中的条件改成a.equals(b)

Java有关字符串相等的问题,请看图?
java中String的+运算实际上是创建了StringBuilder对象来实现的,也就是在+这个过程中会有新的对象生成,其内存地址也就发生了改变。楼上说的没错,==比较的是字符串的地址,但是我自己也实际运行了一下,发现:可以看出a和b都是指向JVM栈中"ABC"这个地址,因此a==b。a和d比较时还能解释为+过程中...

java中的trim方法很奇怪
String 是对象,a==b判断的是a和b是不是一个对象,他们是不同的对象,只是内容相同而已,你应该这么判断 System.out.println(a.equals(b));只有int float double boolean这些不是对象的类型才可以用==直接判断内容是否相同,别的都要用equals ...

Java中关于==和equal的区别 以及equals方法重写
== 和 Equals 的区别 1. == 是一个运算符。2.Equals则是string对象的方法,可以.(点)出来。我们比较无非就是这两种 1、基本数据类型比较 2、引用对象比较 1、基本数据类型比较 ==和Equals都比较两个值是否相等。相等为true 否则为false;2、引用对象比较 ==和Equals都是比较栈内存中的地址...

相似回答