equals 比较的是两个字符串的值
== 比较的是两个字符串对应的内存中的内存地址
比如2个字符串对象
String s1 = new String("str");
String s2 = new String("str");
如果用==号比较,会返回false,因为创建了两个对象,他们在内存中地址的位置是不一样的。
equals的情况比较复杂,它是java.lang.Object类中的一个方法。因为java中所有的类都默认继承于Object,所以所有的类都有这个方法。
本文详细解释了Java中字符串比较的两种方法:equals方法与==操作符的区别。通过具体示例说明了两者在比较字符串时的不同行为,即equals比较的是字符串的值而==比较的是内存地址。
equals 比较的是两个字符串的值
== 比较的是两个字符串对应的内存中的内存地址
比如2个字符串对象
String s1 = new String("str");
String s2 = new String("str");
如果用==号比较,会返回false,因为创建了两个对象,他们在内存中地址的位置是不一样的。
equals的情况比较复杂,它是java.lang.Object类中的一个方法。因为java中所有的类都默认继承于Object,所以所有的类都有这个方法。
8万+
2782