.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();
相关推荐
taihexuelang2 天前
jenkins 部署java项目
java·servlet·jenkins
想你依然心痛2 天前
时序数据库选型指南:开启高效数据管理之旅
struts·servlet·时序数据库
weixin_421994783 天前
更复杂的结构 - 类与对象
.net·.netcore
马尔代夫哈哈哈3 天前
Spring Mvc(二)
java·spring boot·spring·servlet·java-ee
想起你的日子5 天前
ASP.NET Core EFCore之DB First
数据库·.netcore
想起你的日子5 天前
EFCore之Code First
前端·.netcore
凌冰_5 天前
Thymeleaf Maven+Servlet+Mysql图书框架—4(十)
mysql·servlet·maven
Yorlen_Zhang5 天前
Python pytest assert 断言
python·servlet·pytest
码农幻想梦6 天前
实验八 获取请求参数及域对象共享数据
java·开发语言·servlet
1314lay_10076 天前
.NET 7.0在.NET Core Web API中实现限流
.net·.netcore