当前位置: 首页 > 编程语言 > C#

如何在运行时创建一系列带编号的变量?分享

时间:2023-04-10 16:20:15 C#

如何在运行时创建一系列带编号的变量?朋友们,我必须创建一系列ArrayList,每个包含来源不明的对象,每个实例都分配给一个单独的局部变量。到目前为止,还不错……但我还需要每个局部变量的名称遵循一个非常具体的模式:名称应以“oArr”开头,后跟一个或多个数字,反映特定数组在序列中的位置。另外,我在编译时不知道有多少这样的数组——因此,我需要多少局部变量!令我印象深刻的是,这可能是一个可以通过C#4.0中动态类型的可用性来解决的问题,但我不熟悉它们的使用。我怎样才能使用这样的代码...inti=0;foreach(something){ArrayListoArr+i=newArrayList();我++;......并将其转换为符合上述标准并实际编译的东西?或者,有没有更简单、更明智的方法来解决这个问题?您不能在执行期间更改变量的名称,因为代码(甚至C#代码)是使用特定变量名称编译的。如果您可以在执行期间更改名称,则会导致问题。例如,如果一种语言允许更改变量名,那么当您尝试访问名为“var1”的变量时,编译器不知道变量名是否在执行过程中发生了更改,现在称为“x”。您可以尝试做的是让您的程序动态编译一些代码,但这可能不是您问题的正确解决方案。如果您更好地解释您的需求,我们可以为您提供有效的解决方案。希望这有助于编辑:看到你的版本我可以告诉你目前使用的方法是不可能的。我可以给你以下建议:inti=0;列表masterList=newList();foreach(something){masterList.Add(newArrayList());我++;如果你需要让每个ArrayList都有一个特定的名字,你可以回想一下你可以使用字典:inti=0;DictionarymasterList=newDictionary();foreach(something){masterList.Add("oArr"+i.ToString(),newArrayList());我++;}ArrayListal=masterList["oArr1"];这对你有用吗?vararrayLists=new列表();变种我=0;foreach(variteminlist){arrayLists.Add(newArrayList());我++;然后您可以通过索引访问每个数组列表。使用ArrayLists列表。以上就是C#学习教程:如何在运行时创建一系列带编号的变量?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: