string是引用类型,但具有恒等性(其值不能被修改)。

CLR的有驻留机制(堆上保留有散列表),但不适用于动态创建的string,例如string st1 = ""; string st3 = st1 + "Test"; string st2=""+"Test"; st2和st3已经是两个不同的对象了。 

ReferenceEqual是Ojbect的静态构造方法,比较是的引用类型的的变量是否指向同一个对象。

==对于大部分的引用对象,和ReferenceEqual一样。但String重载了它,用于比较它的值是否相等。

==对于值类型变量,比较的是它变量的值。

Equal,string也重载了它,用于比较值。

相关文章:

  • 2021-12-18
  • 2021-10-15
  • 2022-12-23
  • 2021-12-03
  • 2022-12-23
  • 2021-06-15
  • 2021-08-11
猜你喜欢
  • 2020-03-17
  • 2021-11-06
  • 2022-12-23
  • 2021-08-28
  • 2021-12-04
  • 2021-04-12
  • 2021-11-28
相关资源
相似解决方案