C# 在c中通过循环中动态创建的变量查找计数#

C# 在c中通过循环中动态创建的变量查找计数#,c#,C#,我有几个变量命名为am_2、am_1、am_3等等。 我必须通过键入来找到计数:am_2.count()、am_1.count()等等。 我想在循环中做同样的事情。现在,我将不得不分别写下所有内容,如: am_2.Count(),am_1.Count(),am_3.Count().... 有没有一种方法可以通过不反复输入变量名来获得计数,并且可以在循环中进行。我尝试了以下代码,但不起作用: for(i=1;i<=12;i++) { string sm="am_"+1; if(sm.C

我有几个变量命名为am_2、am_1、am_3等等。 我必须通过键入来找到计数:
am_2.count()、am_1.count()
等等。 我想在循环中做同样的事情。现在,我将不得不分别写下所有内容,如:

am_2.Count(),am_1.Count(),am_3.Count().... 
有没有一种方法可以通过不反复输入变量名来获得计数,并且可以在循环中进行。我尝试了以下代码,但不起作用:

for(i=1;i<=12;i++)
{
string sm="am_"+1;

if(sm.Count()==1)
{
 Do the task.....
 }

  }
对于(i=1;i您不能(轻松地)通过字符串名称引用变量,您通常也不想这样做。在编程中,我们通常处理3种类型的数字-0、1和多。当您有多个数字时,某种类型的集合通常是一个好主意

最简单的方法是将所有变量放在一个数组中,然后在集合上循环。根据这些变量的来源,最好(r)从集合开始,但没有上下文-下面是如何利用它们创建集合:

var amArray = new[] { 
   am1, am2, am3, am4, am5, am6, am7, am8, am9, am10, am11, am12 
};
foreach (var am in amArray) {
   if (am.Count() > 1) {
      // do the task
   }
}
您不能(轻松地)通过字符串名称引用变量—您通常也不想这样做。在编程中,我们通常处理3种类型的数字—0、1和多。当您有多个数字时,某种类型的集合通常是一个好主意

最简单的方法是将所有变量放在一个数组中,然后在集合上循环。根据这些变量的来源,最好(r)从集合开始,但没有上下文-下面是如何利用它们创建集合:

var amArray = new[] { 
   am1, am2, am3, am4, am5, am6, am7, am8, am9, am10, am11, am12 
};
foreach (var am in amArray) {
   if (am.Count() > 1) {
      // do the task
   }
}

您可以将这些变量添加到列表中

List<String[]> am_list = new List<String[]>();
am_list.add(am_2);
am_list.add(am_1);
am_list.add(am_3);

记住用变量类型替换
String[]

您可以将这些变量添加到列表中

List<String[]> am_list = new List<String[]>();
am_list.add(am_2);
am_list.add(am_1);
am_list.add(am_3);

记住替换
String[]
与您的变量类型有关。

这是关于代码设计问题的总体说法。您可能应该考虑重新安排代码,以免遇到此类问题。否则情况会变得更糟。这是关于代码设计问题的总体说法。您可能应该考虑重新安排代码,以免遇到此类问题起诉,否则情况会更糟。