.Net Core Record 类型

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();
相关推荐
小黄人软件5 小时前
jenkins脚本查看及备份
运维·servlet·jenkins
步、步、为营1 天前
.NET Core接口IServiceProvider
.net·.netcore
杨DaB2 天前
【JavaWeb】Maven、Servlet、cookie/session
hive·servlet·maven
只在空想家2 天前
Servlet 快速入门
java·后端·servlet
冰茶_3 天前
建造者模式:优雅构建复杂对象
设计模式·微软·c#·.netcore·建造者模式·软件开发
冰茶_3 天前
结构型设计模式之桥接模式
学习·设计模式·微软·c#·.netcore·桥接模式
江沉晚呤时4 天前
SQL Server 事务详解:概念、特性、隔离级别与实践
java·数据库·oracle·c#·.netcore
[email protected]4 天前
ASP.NET Core SignalR 身份认证集成指南(Identity + JWT)
后端·中间件·asp.net·.netcore
[email protected]5 天前
ASP.NET Core SignalR的基本使用
后端·asp.net·.netcore
bing_1585 天前
ServletComponentScan 注解的作用
servlet