(Object)s3==(Object)s2
  这样不是对值进行比较,而是对地址进行比较,本质上执行的是object.Equals方法。
  s4和s2之所以相等是因为指向同一个地址

解决方案 »

  1.   

    你的书是不是有问题,下面是Vs.Nset联机帮助的一段话:
    该拘留池节约字符串存储区。如果将字符串常数分配给几个变量,则每个变量设置为引用“拘留池”(intern pool) 中的同一常数,而不是引用具有相同值的 String 的几个不同实例。此方法在拘留池中查找 str。如果 str 存在,则返回对它的引用。如果 str 不存在,则将一个等于 str 的实例添加到拘留池并返回该实例的引用。
      

  2.   

    ms-help://MS.VSCC/MS.MSDNVS.2052/cpref/html/frlrfSystemStringClassInternTopic.htm