C# 匿名类型

2018-01-22 17:08 更新

C# 匿名类型

匿名类型是由编译器在运行时创建的一个类,用于存储一组值。

要创建匿名类型,请使用 new 关键字,后跟对象初始值设定器,指定类型将包含的属性和值。

例子

例如:


var person = new { Name = "Jack", Age = 23 };

您必须使用 var 关键字来引用匿名类型,因为它没有名称。

可以从表达式推断匿名类型的属性名称。例如:


int Age = 3;
var person = new { Name = "Jack", Age, Age.ToString().Length };

等效于:


var person = new { Name = "Jack", Age = Age, Length = Age.ToString().Length };

在同一个程序集中声明的两个匿名类型实例将具有相同的底层类型,如果它们的元素命名和类​​型相同:


var a1 = new { X = 2, Y = 4 };
var a2 = new { X = 2, Y = 4 };
Console.WriteLine (a1.GetType() == a2.GetType()); // True

Equals方法被覆盖以执行等式比较:


Console.WriteLine (a1 == a2); // False
Console.WriteLine (a1.Equals (a2)); // True

您可以按如下方式创建匿名类型的数组:


var persons = new[]{
    new { Name = "A", Age = 3 },
    new { Name = "B", Age = 4 }
};


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号