匿名类型
首先接收var关键字,它用于表示隐式类型化的变量。
var与new关键字一起使用时,可以创建匿名类型。
匿名类型只是一个继承自Object类且没有名称的类。该类的定义从初始化器中推断,类似于隐式类型化的变量。
创建匿名类:
1 var user = new 2 { 3 Name = "小明", 4 Age = 18 5 }; 6 var user2 = new 7 { 8 Name = "小红", 9 Age = 16 10 };
user1 和 user2的字段和字段类型都相同,所以user1 和 user2的类型就相同。例如,可以设置user = user2。只有所有属性都匹配才能设置user = user2。
如果设置的值来自另一个对象,且字段的数量和字段类型都相同,就可以直接简化初始化器,例如:
var user = new { Name = "小明", Age = 18 }; var user2 = new { user.Name, user.Age };