C#中的集合初始化器

C#中的集合初始化器是一种简洁的语法,允许在声明集合的同时初始化其元素。这种语法特别适用于初始化实现了IEnumerable接口并具有Add方法的集合类型,如List<T>Dictionary<TKey, TValue>等。

集合初始化器的基本用法

集合初始化器的基本语法如下:

csharp 复制代码
var collection = new CollectionType<T> {
    element1,
    element2,
    ...
    elementN
};

或者,对于需要指定键和值的集合(如字典),可以使用以下语法:

csharp 复制代码
var dictionary = new Dictionary<TKey, TValue> {
    { key1, value1 },
    { key2, value2 },
    ...
    { keyN, valueN }
};

使用集合初始化器初始化集合的示例

  1. 初始化List
csharp 复制代码
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };

这段代码创建了一个List<int>对象,并使用集合初始化器初始化了五个元素。

  1. 初始化Dictionary
csharp 复制代码
Dictionary<string, int> ages = new Dictionary<string, int> {
    { "Alice", 30 },
    { "Bob", 25 },
    { "Charlie", 35 }
};

这段代码创建了一个Dictionary<string, int>对象,并使用集合初始化器初始化了三个键值对。

  1. 使用对象初始化器初始化集合中的对象

当集合的元素是对象时,可以使用对象初始化器来初始化这些对象。例如:

csharp 复制代码
List<Person> people = new List<Person> {
    new Person { Name = "Alice", Age = 30 },
    new Person { Name = "Bob", Age = 25 },
    new Person { Name = "Charlie", Age = 35 }
};

这段代码假设有一个Person类,具有NameAge属性。它创建了一个List<Person>对象,并使用集合初始化器和对象初始化器初始化了三个Person对象。

集合初始化器的优势

  • 简洁性 :集合初始化器提供了一种简洁的语法来初始化集合,避免了在代码中显式调用Add方法。
  • 可读性:使用集合初始化器可以使代码更加易读,特别是当需要初始化大量元素时。
  • 灵活性:集合初始化器可以与对象初始化器结合使用,允许在初始化集合的同时初始化集合中的对象。
相关推荐
长安——归故李3 分钟前
【modbus学习】
java·c语言·c++·学习·算法·c#
索迪迈科技5 分钟前
STL库——map/set(类函数学习)
开发语言·c++·学习
ForteScarlet27 分钟前
Kotlin 2.2.20 现已发布!下个版本的特性抢先看!
android·开发语言·kotlin·jetbrains
小码编匠27 分钟前
WPF 多线程更新UI的两种实用方案
后端·c#·.net
anlogic36 分钟前
Java基础 9.10
java·开发语言·算法
yongche_shi40 分钟前
第二篇:Python“装包”与“拆包”的艺术:可迭代对象、迭代器、生成器
开发语言·python·面试·面试宝典·生成器·拆包·装包
蜗牛~turbo1 小时前
金蝶云星空 调价表取历史价格
java·数据库·sql·c#·database
Elastic 中国社区官方博客1 小时前
介绍 Python Elasticsearch Client 的 ES|QL 查询构建器
大数据·开发语言·数据库·python·elasticsearch·搜索引擎·全文检索
Hóng xīng qiáo1 小时前
swVBA自学笔记014、Lisp适合对SolidWorks进行二次开发吗 ?
开发语言·笔记·lisp
带鱼吃猫1 小时前
C++的诗行:一文读懂C++的继承机制
开发语言·c++·学习·visual studio