String s1 = “abc“;
s1指向了“abc”
String s2 = new String(“abc“);
生成了对象new String(“abc“);s2指向这个对象,这个对象引用了“abc”;
equals意义是判断内容是否一直因为s1内容为“abc”,s2内容也为“abc”因此返回true。
==是判断引用是否一致,s1、s2指向不同所以返回false。
“abc”只生成一次,具体是生成在堆还是栈不同虚拟机实现原理不同
java :两个对象相等equals和==的区别
最新推荐文章于 2023-03-17 18:58:48 发布