equals()方法 你少个s
得出的结果两个都是true
原因是 String类中equals方法是比较2个字符串值是否相同 显然相同
在JAVA虚拟机的堆中存在一个池 是专门放直接赋值的字符串的
在直接复制时先在堆中找是否有该字符串如果没有就创建一个如果
有就直接把引用指向它 你的代码是2个引用都是直接赋值的所以
第2个会指向池中第一个赋值时创建的字符串 2个引用指向的是
同样同一个对象所以用“==”判断时返回的是true。
class TEST
{
public static void main( String args[]) throws Exception
{
String str1="abc";
String str2="abc";
System.out.print(str1.equals(str2));
System.out.print(str1==str2);
}
现在可以运行了~