C#中List集合初始化代码的语法及工作原理咨询
这段C#代码的语法和工作原理解析
这段代码的核心作用是:给requestParams对象的OutParamList属性,赋值一个包含单个ParamsList对象的泛型列表。下面拆解每部分的语法和逻辑:
1. 泛型列表实例化
new List<ParamsList>()
这是创建C#泛型集合List<T>的实例,<ParamsList>指定这个列表只能存放ParamsList类型的对象,这一步会生成一个空的列表容器。
2. 集合初始化器
{ new ParamsList() {Name = OutParamName} }
这是C#的集合初始化器语法,省去了手动调用List.Add()方法的步骤。大括号里的内容就是要添加到列表中的元素,编译器会自动把这些元素逐个加入到刚创建的空列表里。
3. 对象初始化器
new ParamsList() {Name = OutParamName}
这是C#的对象初始化器语法,用来快速创建类实例并给属性赋值。不用先创建空对象再单独赋值,直接在大括号里指定Name属性的值为OutParamName变量的内容,一步完成对象创建和属性设置。
等价的传统写法
如果不用简化的初始化器语法,这段代码和下面的写法完全等价,能更直观看到执行步骤:
// 1. 创建空的ParamsList类型列表 var tempList = new List<ParamsList>(); // 2. 创建ParamsList实例并设置Name属性 var paramItem = new ParamsList(); paramItem.Name = OutParamName; // 3. 将实例添加到列表中 tempList.Add(paramItem); // 4. 把列表赋值给requestParams的OutParamList属性 requestParams.OutParamList = tempList;
内容的提问来源于stack exchange,提问作者Aleem Anwer
相关产品推荐
相关产品推荐

