System.out.println(sOrgin==sOrgin2);//“==”比较其引用,两次返回的地址是不一样的,所以是不同的,flase
System.out.println(sOrgin.equals(sOrgin2));//“equals”比较的是两个字符串的内容是否相同,因为反转后值是一样的,所以是true
说到对
string 类重写了 object的 equals 方法 object的equals 就是==地址值比较 而string 是比较对象具体值
我要说的是 一个字符串的 创建要有两个对象 一个是在池内 一个是在池外 当然你创建的对象引用池外的
而当你再去 创建一个对象时 jvm会去池内找 如果有直接引用 如果没有就要重复上一步 |