public class Person {
public string id {get;init;}
public string code {get;init;}
public string name {get;init;}
}
//Person 属性不可单独赋值,相当于使用record定义
public record Person string id,string code,string name)
//record类型定义对象
1、定义的属性只能在初始化时赋值
2、重写了Equals
等对象类型的比较方法,在两个不同引用的record
对象的内容相同时,对两者进行==
比较,判断两者相等为true
。
3、重写了ToString()
方法,便于输出属性内容。还重写了GetHashCode()
和Equals()
方法。
public record User(string code,string name);
User u1 = new User("101", "yxs");
User u2 = new User("101", "yxs");
//with的使用
//with表达式,用于拷贝原有对象,并对特定属性进行修改
User u3 = u2 with {code="", name = "name2"};
Console.WriteLine(u1.ToString());//输出对象值
Console.WriteLine(u1.Equals(u2));//true
Console.ReadLine();