ReferenceEquals()判断两个字符串是否指向相同的内存地址;(判断引用)

Equals,先判断两个字符串有相同的内存位置,是则两个字符串相等;否则逐字符比较两个字符串,判断是否相等(先判断引用,在判断值是否相等)

下面举一个例子看一下:

view plaincopy to clipboardprint?
string peom1 = "Kubla Khan";  
           string peom2 = "Kubla Khan";  
           string peom3 = String.Copy(peom2);  
           string peom4 = "kubla khan";  
 
           //ReferenceEquals()判断两个字符串是否指向相同的内存地址  
           Console.WriteLine("peom1 == peom2:"+(peom1 == peom2));//True  
           Console.WriteLine("peom1 == peom3:" + (peom1 == peom3));//True  
           Console.WriteLine("ReferenceEquals(peom1,peom3):" + ReferenceEquals(peom1, peom3));//False  
             
           //Equals,先判断两个字符串有相同的内存位置,则两个字符串相等;否则逐字符比较两个字符串,判断是否相等  
           Console.WriteLine("Equal(peom1,peom3):" +String.Equals(peom1, peom2));//true  
           Console.WriteLine("Equal(peom1,peom3):" + String.Equals(peom1, peom3));//true

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/licl19870605/archive/2009/10/15/4676881.aspx

C#中ReferenceEquals和Equals的区别的更多相关文章

  1. java中的==和equals的区别

    关于JAVA中的==和equals函数的区别 今天在研读Thinking in java 时注意到==和equals的区别,于是就通过查看JDK_API才读懂了他们的区别,于是将心得分享一下,望批评指 ...

  2. java中hashcode和equals的区别和联系

    HashSet和HashMap一直都是JDK中最常用的两个类,HashSet要求不能存储相同的对象,HashMap要求不能存储相同的键. 那么Java运行时环境是如何判断HashSet中相同对象.Ha ...

  3. C#中的==和Equals的区别

    一,值类型中的比较,对于值类型,如果对象的值相等,则相等运算符 (==) 返回 true,否则返回 false. ; ; bool bi1 = ai.Equals(bi); //true bool b ...

  4. java中等于和equals的区别

    面试的时候没答上,很受打击,特写在这里. ==是判断两个变量或实例是不是指向同一个内存空间equals是判断两个变量或实例所指向的内存空间的值是不是相同 除了String和封装器,equals()和“ ...

  5. Scala中==,eq与equals的区别

    根据官方API的定义: final def ==(arg0: Any): Boolean The expression x == that is equivalent to if (x eq null ...

  6. Java中的==和equals的区别详解

    1.基础知识 (1)String x = "hello"; (2)String x = new String ("hello"); 第1种方式的工作机制是,首先 ...

  7. JAVA中的==和equals()的区别

    一.先来说说Java的基本数据类型和引用类型 八大基本数据类型:Byte,short,int,long,double,folat,boolean,char,其中占一个字节的是byte,short和ch ...

  8. 浅谈==和equals的区别

    java中的==和equals的区别? 看上面的代码,输出的结果是: true false true true 1.为什么会有上面的区别呢?==和equals比较的到底是什么呢? 搞清楚两者的区别其实 ...

  9. C#中 Reference Equals, == , Equals的区别

    原文地址:http://blog.csdn.net/wuchen_net/archive/2010/03/23/5409327.aspx ReferenceEquals, == , Equals Eq ...

随机推荐

  1. datagrid带查询带分页

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat=&qu ...

  2. Codeforces 193A. Cutting Figure

    看起来非常神,但仅仅有三种情况 -1 , 1 ,2..... A. Cutting Figure time limit per test 2 seconds memory limit per test ...

  3. [Hadoop]安装

    1 从官网下载hadoop稳定版 http://www.apache.org/dyn/closer.cgi/hadoop/common/ 2 安装JAVA 参考如下blog http://www.cn ...

  4. uva 10494 - If We Were a Child Again 大数除法和取余

    uva 10494 - If We Were a Child Again If We Were a Child Again Input: standard inputOutput: standard ...

  5. css横向 弹性盒子布局的一些属性

    <head> <meta charset="utf-8"> <meta name="viewport" content=" ...

  6. Javascript登录页面“记住密码”实现

    JS记住密码实现效果:  JavaScript Code  1234567891011121314151617181920212223242526272829303132   <!DOCTYPE ...

  7. python3----练习题(冒泡排序)

    冒泡,原理是临近的数字两两进行比较,按照从小到大的顺序进行交换,这样交换一次之后,最大的数字就被交换到了最后一位. li = [33, 2, 10, 1] for j in range(1, len( ...

  8. flask-第三方组件

    flask-script  离线脚本 from flask_demo import create_app from flask_script import Manager app = create_a ...

  9. libevent(2)

    client.cpp // App02.cpp : 定义控制台应用程序的入口点. // #include <string.h> #include <errno.h> #incl ...

  10. iOS 下载

    #import "ViewController.h" @interface ViewController () @property (strong, nonatomic) NSMu ...