String s1="1234";
String s2= s1.concat("5678");
String s3=s1+"5678";
boolean b=(s2==s3);
b的值是什么

解决方案 »

  1.   

    false,==比较引用是否相同,equal比较的是内容
      

  2.   

    ==对于String类型比较的是:引用(句柄)是否指向同一对象
      

  3.   

    false
    ==比较的是内存地址,equals比较的是内容
      

  4.   

    == 比的是地地址是否相同
    很显然,s2、s3对应不同的地址 返回值当然为false了
    如果是 s2.equals(s3),那返回值就是true啦
      

  5.   

    ==对于String类型比较的是:引用(句柄)是否指向同一对象   9L
    concat("") 和 + 都是字符串的拼接@针对String类型的“==”就是比的是地址,你用equal()就是true了