星空网 > 软件开发 > ASP.net

C#之相等性判断探秘

  C#实现相等性判断的方法:

  1. public virtual bool Equals(object obj);
  2. public static bool Equals(object objA, object objB);
  3. public static bool ReferenceEquals(object objA, object objB);
  4. “==”运算符
//确定指定的 System.Object 是否等于当前的 System.Object
public virtual bool Equals(object obj){ return RuntimeHelpers.Equals(this, obj);}//确定是否将指定的 System.Object 实例视为相等public static bool Equals(object objA, object objB){ return ((objA == objB) || (((objA != null) && (objB != null)) && objA.Equals(objB)));}//确定指定的 System.Object 实例是否是相同的实例public static bool ReferenceEquals(object objA, object objB){ return (objA == objB);}

== 和 !=运算符比较内容

   **********************************************************************************************************************

using System;using System.Collections;using System.Collections.Generic;using System.Linq;using System.Text;namespace ValueTypeDemo{  //鞋子类  class Shoes  {    private string name; //品名    private int price; //单价    public string Name    {      get { return name; }      set { name = value; }    }    public int Price    {      get { return price; }      set { price = value; }    }  }  class Program  {    static void Main(string[] args)    {      Shoes S1 = new Shoes();      Shoes S2 = new Shoes();      Shoes S3 = S2;      int x = 5;      int y = 8;      int z = x;      object A = 11;      object B = A;      object C = 11;      //内容比较      Console.WriteLine(x==y); //false      Console.WriteLine(x==z); //true      //装箱后按引用比较      Console.WriteLine(A==B); //true      Console.WriteLine(A==C); //false      //装箱后按装箱前类型比较值是否相等      Console.WriteLine(A.Equals(B)); //true      Console.WriteLine(A.Equals(C)); //true      Console.WriteLine(Equals(A, B)); //true      Console.WriteLine(Equals(A, C)); //true      //强制按引用比较      Console.WriteLine(ReferenceEquals(A,B)); //true      Console.WriteLine(ReferenceEquals(A,C)); //false      Console.ReadKey();    }  }}

 




原标题:C#之相等性判断探秘

关键词:C#

C#
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

亚马逊法国在vat申报截止日期到来之际,有哪些要注意的事项?:https://www.kjdsnews.com/a/1311791.html
亚马逊法国vat申报最后期限将至:千万不要错过!:https://www.kjdsnews.com/a/1311792.html
亚马逊欧洲站:英国vat税率是多少?:https://www.kjdsnews.com/a/1311793.html
亚马逊意大利vat税务申报指南:https://www.kjdsnews.com/a/1311794.html
亚马逊德国:了解vat税率及如何计算:https://www.kjdsnews.com/a/1311795.html
亚马逊德国开店:需要知道的vat和包装法:https://www.kjdsnews.com/a/1311796.html
2024深圳龙岗区文化馆免费音乐培训课程安排+报名方式:https://www.vstour.cn/a/366181.html
Keep上市后首份财报:亏损同比收窄55.7% :https://www.kjdsnews.com/a/1836654.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流