如何基于循环在c#中创建(n)个对象
假设我想创建名为DT(n)的(n)个数据表。。。我怎样才能循环进行呢 下面是伪代码如何基于循环在c#中创建(n)个对象,c#,C#,假设我想创建名为DT(n)的(n)个数据表。。。我怎样才能循环进行呢 下面是伪代码 int n=99; for (int i = 0; i < n; i++) { DataTable DT + n = new DataTable(); // <--- this } int n=99; 对于(int i=0;i
int n=99;
for (int i = 0; i < n; i++)
{
DataTable DT + n = new DataTable(); // <--- this
}
int n=99;
对于(int i=0;i DataTable DT+n=newdatatable();//不能在C#中创建动态命名的变量。
出于您的目的,最好使用数组或字典()不,C#中不能有动态变量名
但是,您可以将它们放入数组中(无论如何,这是一种更好的方法):
int n=99;
DataTable[]DT=新的DataTable[99];
对于(int i=0;i
将它们存储在数据结构中
Enumerable.Range(0,n).Select(x => new DataTable()).ToArray()
试一试
List DTs=new List();
int n=99;
对于(int)(i=0;i你能试试这个吗
public List<T> CreateObjects<T>(int numbers) where T: new()
{
List<T> _return = new List<T>();
for (int i = 0; i <= numbers; i++)
{
_return.Add(new T());
}
return _return;
}
public List CreateObjects(整数),其中T:new()
{
列表_return=新列表();
对于(int i=0;我可以使用数组吗?不,这是不可能的。但是你可以创建一个数据表数组或它们的其他集合。使用New
是VB,New
是C#。它们不会混合:)@BradleyDotNET::Oops!!我的错。谢谢你指出这一点。:)这个答案出现在低质量审查队列中,可能是因为您没有解释某些内容。如果您确实解释了(在您的答案中),您更有可能获得更多的投票,提问者实际上学到了一些东西!或者只是可枚举。重复(new DataTable(),n)@TimSchmelter,这将为您提供n
对DataTable
的相同实例的引用,而不是n
对DataTable
的实例的引用。这对OP的帮助可能比那些更奇特的答案大得多。虽然这是一段很好的通用代码,但它没有解释,实际上与LINQ答案相同(但更令人困惑的是,这个问题从来都不是关于泛型的)。是的,我知道,但这只是get idea的一个例子
List<DataTable> DTs = new List<DataTable>();
int n =99;
for(int(i=0;i<n;i++)
{
DataTable DT = new DataTable();
DTs.Add(DT);
}
public List<T> CreateObjects<T>(int numbers) where T: new()
{
List<T> _return = new List<T>();
for (int i = 0; i <= numbers; i++)
{
_return.Add(new T());
}
return _return;
}
var myList = CreateObjects<DataTable>(100);
var myList = CreateObjects<AnyClass>(100);