当前位置: 首页> 文旅> 艺术 > 百度下载免费安装_做平面设计需要学什么软件_优化技术_搜索引擎优化seo公司

百度下载免费安装_做平面设计需要学什么软件_优化技术_搜索引擎优化seo公司

时间:2025/7/16 5:01:30来源:https://blog.csdn.net/m0_50953782/article/details/142924666 浏览次数:0次
百度下载免费安装_做平面设计需要学什么软件_优化技术_搜索引擎优化seo公司

引用相等性

引用相等性指两个对象引用均引用同一基础对象。 这可以通过简单的赋值来实现。
using System;
class Test
{public int Num { get; set; }public string Str { get; set; }public static void Main(){Test a = new Test() { Num = 1, Str = "Hi" };Test b = new Test() { Num = 1, Str = "Hi" };//使用 ReferenceEquals 方法确定两个引用是否引用同一对象。bool areEqual = System.Object.ReferenceEquals(a, b);// False:System.Console.WriteLine("ReferenceEquals(a, b) = {0}", areEqual);// Assign b to a.b = a;// Repeat calls with different results.areEqual = System.Object.ReferenceEquals(a, b);// True:System.Console.WriteLine("ReferenceEquals(a, b) = {0}", areEqual);}
}
创建了两个对象,但在赋值语句后,这两个引用所引用的是同一对象。 因此,它们具有引用相等性。 

值相等性

值相等性指两个对象包含相同的一个或多个值。 
对于基元值类型(例如  int    bool ),针对值相等性的测试简单明了。 可以使用  == 运算符
int a = GetOriginalValue();  
int b = GetCurrentValue();  // Test for value equality.
if (b == a)
{  // The two integers are equal.  
}
对于具有多个字段或属性的类和结构,值相等性的定义通常指所有字段或属性都具有相同的值。 例如,如果 pointA.X 等于 pointB.X,并且 pointA.Y 等于 pointB.Y,则可以将两个  Point  对象定义为相等。
对记录来说, 相等性是指如果记录类型的两个变量类型相匹配,且所有属性和字段值都相同 ,那么记录类型的两个变量是相等的。 对于其他引用类型(例如类), 相等性默认指引用相等性,除非执行了 值相等性
值相等性 并不要求类型中的所有字段均相等。 只需子集相等即可。
public record Person(string FirstName, string LastName, string[] PhoneNumbers);
public static class Program
{public static void Main(){var phoneNumbers = new string[2];Person person1 = new("Nancy", "Davolio", phoneNumbers);Person person2 = new("Nancy", "Davolio", phoneNumbers);Console.WriteLine(person1 == person2); // output: True  值相等性,这里是记录,用的是值相等性,而非引用相等性person1.PhoneNumbers[0] = "555-1234";Console.WriteLine(person1 == person2); // output: TrueConsole.WriteLine(ReferenceEquals(person1, person2)); // output: False使用 ReferenceEquals() 方法可以判断两个对象是否指向同一内存地址}
}
关键字:百度下载免费安装_做平面设计需要学什么软件_优化技术_搜索引擎优化seo公司

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: