C# 对象初始化器和集合初始化器
/// <summary>
/// 图书类
/// </summary>
public class Book
{
/// <summary>
/// 图书名称
/// </summary>
public string Title { get; set; }
/// <summary>
/// 单价
/// </summary>
public float Price { get; set; }
/// <summary>
/// 作者
/// </summary>
public string Author { get; set; }
/// <summary>
/// ISBN号
/// </summary>
public string ISBN { get; set; }
}
//对象初始化器
Book book = new Book{ Title="Inside COM",ISBN="123-456-789"};
注意:要使用对象初始化器,那么这个对象必须有一个无参构造方法,如果你给这个方法写了一个有参构造方法而将它的默认无参构造方法覆盖了并且没有提供一个新的无参构造方法,那么使用对象初始化器编译的时候是不会通过的
//集合初始化器
IList<Book> books = new List<Book>();
//这里就使用了对象初始化器,学以致用吧
books.Add(new Book { Title = "Inside COM", ISBN = "123-456-789",Price=20 });
books.Add(new Book { Title = "Inside C#", ISBN = "123-356-d89",Price=100 });
books.Add(new Book { Title = "Linq", ISBN = "123-d56-d89", Price = 120 });
应用集合初始化器就更简洁了
IList<Book> users= new List<Book>{
new Book{ Title = "Inside COM", ISBN = "123-456-789",Price=20});
new Book{Title = "Inside C#", ISBN = "123-356-d89",Price=100 });
new Book{ Title = "Linq", ISBN = "123-d56-d89", Price = 120});
}
最新文章
- Oracle监控用户索引使用情况,删除无用索引
- SVM实践
- 制造行业流程管理的“IPO”思维
- BLE资料应用笔记 -- 持续更新
- log4net将日志进行分类,保存到不同的目录当中
- 个人软件过程(psp)需求文档
- Face The Right Way 一道不错的尺取法和标记法题目。 poj 3276
- LDA的一些资料
- 牛腩公布系统--HTTP 错误 403.14 - Forbidden
- 2017年的golang、python、php、c++、c、java、Nodejs性能对比(golang python php c++ java Nodejs Performance)
- Linux上程序调试的基石(1)--ptrace
- 【原创】大叔问题定位分享(23)Ambari安装向导点击下一步卡住
- HDU - 3980 Paint Chain(SG函数)
- Node.js实战(十)之EventEmitter
- GGSN与SGSN简介
- 迭代器适配器{(插入迭代器back_insert_iterator)、IO流迭代器(istream_iterator、ostream_iterator)}
- Struts2 上传下载
- 转 Hibernate中cascade和inverse的作用
- To Use Genymotion
- 刨根问底Objective-C Runtime(4)- 成员变量与属性