如何传递Listc#中的构造函数
本文关键字:构造函数 string 何传递 List | 更新日期: 2023-09-27 18:13:12
如何将List传递给构造函数
我想这样做
private void button1_Click(object sender, EventArgs e)
{
step2 st2 = new step2(list);
}
但是在构造函数定义中该怎么写
public step2()
{
InitializeComponent();
}
欢迎提出任何建议
您需要在构造函数中定义一个参数。例如,
public step2(List<Type> list)
{
}
其中Type
是您的列表类型,即List<string>
就是这么简单
public step2(List<string> list)
{
InitializeComponent();
}
我强烈推荐你读一本关于c#基础知识的书
您需要为step2
类型提供一个接受List<T>
的构造函数
public step2()
{
InitializeComponent();
}
应:public step2(List<T> list)
{
//Do something with list
InitializeComponent();
}
构造函数c#编程指南
基本上:
public step2(List<Type> list) {
}
但是最好的做法是设置IList
作为参数类型。
public step2(IList<Type> list) {
}
需要将List或List继承的任何类/接口传递给构造函数。例如,IList也可以。
public step2(List<T> list){ }
public step2(IList<T> list){ }
T是Type
你甚至可以这样写:
public step2(List<T> list){}
将函数用作所有List项的泛型函数:)
这应该是你的类构造函数来容纳List:
public step2(List<T> list)
{
InitializeComponent();
}
你可以这样调用这个类:
List<string> myList = new List<string>(); // You can choose your own data type.
step2 obj = new step2(myList);
public class A
{
List<string> listParam1 = new List<string>();
public A(List<string> ListParam)
{
listParam1 = ListParam;
}
}
这就是参数化构造函数的样子。
你可以这样初始化它:
List<string> param = new List<string>();
param.Add("One");
param.Add("Two");
A obj = new A(param);
如果有帮助请告诉我。
答案可能取决于step2从哪个类继承或者如何使用它。换句话说,如果你的类step2需要一个默认构造函数,你应该而不是替换构造函数,而是添加另一个:
public step2()
{
InitializeComponent();
}
public step2(IList<String> stringList) : this()
{
// do something with stringList
}