20、以下二条语句返回值为 true 的有:
A:“beijing”==“beijing”;
B:“beijing”.equalsIgnoreCase(new String(“beijing”));【基础】
答:A 和 B 。String s1="on e";
s1.trim();
syso(s1)//on e是不是这样 因为string是final类  在jvm对他进行操作的时候是不是有一个lazy机制  没有操作是不会被复制,
要是被操作 就会被复制 然后在新的string上面进行操作,
希望大神们指点  另外关于equals相等 hashcode一定相等吗  set和hashcode的关系 求指点stringfinal类lazy

解决方案 »

  1.   

    1、String创建几个对象的问题:http://www.iteye.com/topic/7746732、“==”与equals问题:http://www.iteye.com/topic/1121144
      

  2.   

    建议你看一下《Effective java》这本书,你的问题里面有比较全面的解释。
      

  3.   

    “另外关于equals相等 hashcode一定相等吗?”
    如果该类没有重写equals和hashcode方法的话,那么两个方法返回值(true/false)的结果是一致的,但是如果重写了以上两个方法的话,那就不一定了,主要还是要看源码的、反正java是开源的,你就直接进入源码看看他是怎么写的吧、