2014-08-28 199 views
0
//Laver Array Liste 
ArrayList Fields123 = new ArrayList(); 
Fields123.Add("12345"); 
Fields123.Add("67890"); 
Fields123.Add("09876"); 
Fields123.Add("54321"); 
Fields123.Add("12345"); 

//Som Variable 
foreach (string tbOldField in Fields123) 
{ 
    number = number + 1; 

    string field + number = tbOldField; 
} 

不知道C#中的语法。我的问题是我需要的字符串字段是这样的:在字符串中插入字符串

String field1 
String field2 
String field3 
String field4 
String field5 

,但不知道如何得到的“数”,所以它是场(数)。

+1

不要再使用'ArrayList'。它属于C#没有_Generics_的旧时代。您可以使用'List '代替。在你的情况下,'字典'可能会更好.. – 2014-08-28 11:28:51

+0

不清楚你到底在问什么。你期待什么输出?像“”field1“:12345'和'”field2“:67890'这样的键值对的数组? 'field1'是一个变量名/键还是只是一个相应的值? – James 2014-08-28 11:37:07

回答

2

首先不要使用弱类型ArrayList使用类型安全的通用集合,如List<T>

其次,你无法通过连接其他变量,如that.What你需要构建一个变量名是Dictionary<string, string>

List<string> Fields123 = new List<string>(); 
Fields123.Add("12345"); 
Fields123.Add("67890"); 
Fields123.Add("09876"); 
Fields123.Add("54321"); 
Fields123.Add("12345"); 

Dictionary<string, string> values = new Dictionary<string, string>(); 
int number = 1; 
foreach (string tbOldField in Fields123) 
{ 
    values.Add("field" + number++, tbOldField); 
} 

然后,您可以通过使用相应的键,例如获取值:values["field1"]

+0

根据所使用的值的不同,使用元组而非KVP可能更合适 – James 2014-08-28 11:43:12