2014-07-23 47 views
-4

在C#中,是否可以在循环中声明变量?我有一个名称数组,我希望它们都是变量。有没有办法创建它们?像你可以在循环中创建变量吗? C#

string[] nameArray{ name, othername, anothername }; 

foreach (var file in nameArray) { 
    data 'file' = new data(); 
} 
+0

您可以在一个循环中声明变量,但我认为你在找什么在这种情况下是一个数组。数组中的条目未命名,但数组本身已命名,并且各个条目由索引引用。 – Cameron

+0

你可以创建像这样的变量 foreach(var file in nameArray) //这里我创建var1变量 data var1 = new data(); } –

+0

这是不可能的。你为什么想要这样的东西? –

回答

1

您不能像这样“动态地”声明变量,变量名称必须在编译时静态知道。但是,您可以通过使用Dictionary实现了类似的结果:

string[] nameArray = { "name", "othername", "anothername" }; 
var dict = new Dictionary<string, data>(); 
foreach (var file in nameArray) 
{ 
    dict[file] = new data(); 
} 
+0

你会如何回忆数据? – Ogoun

+0

'Console.Write(dict [“name”]);' – TaW

+0

太棒了,谢谢! – Ogoun

相关问题