2013-04-17 109 views
-1

我有一个字符串数组,每个循环。我想遍历数组并对每个字段执行一些操作,然后将每个字段的结果输出到一个新变量中。分配阵列的每个场一个变量,foreach循环

编辑:数组的每个字段从隐藏字段中获取一个值,该值表示时间(分钟)。在foreach循环中,我打算将每个字段从分钟转换为HH:mm格式。然后我需要将新格式传递给一个新变量。

阵:

string[] field = new string[8]; 
     field[0] = field_0_0.Value; 
     field[1] = field_0_1.Value; 
     field[2] = field_0_2.Value; 
     field[3] = field_0_3.Value; 
     field[4] = field_1_0.Value; 
     field[5] = field_1_1.Value; 
     field[6] = field_1_2.Value; 
     field[7] = field_1_3.Value; 

Foreach循环:

foreach (string newfields in field) 
{ 
    //Do something to each field 
} 

我要寻找与被分配每个结果到一个新的变量援助的一部分。任何人都可以指引我正确的方向,或者甚至建议采取不同的/更好的方式来做到这一点。

在此先感谢。

+1

什么是field_0_0'和'类型...? –

+0

字符串,它从隐藏字段获取值。 –

+0

那么当你完成你的循环时,你想要在单独的变量循环之后有可用的操作结果?难道你不能简单地重新使用你的现场阵列,还是需要保留原始值? – Yeronimo

回答

2

只需使用普通的for循环。

for(int i=0;i<field.Length;i++) { 
    string curValue = field[i]; 

    // do something with curValue, change it in some way 

    field[i] = curValue; //update 
} 

如果这不是你要求的,请澄清。

+0

这对我很有用,非常感谢!如果问题不清楚,道歉。 –

1

你可以改变你的枚举对象,但不是在foreach。您将需要使用for循环。修改样本感谢评论

List<string> mylist = new List<string>(); 
    mylist.Add("item1"); 
    mylist.Add("item2"); 

    for (int i = 0; i < mylist.Count; i++) 
    { 
     mylist[i] = mylist[i].Replace("i", "o"); 
    } 
+0

可以很好地将值分配给项目使用列表内/ foreach..there在这种情况下没有必要两个列表..它只是你不能删除/添加项目到您当前枚举列表。 –

+0

Hmmmm为什么不这项工作,那么: '名单 MYLIST =新名单(); (“item1”); mylist.Add(“item1”); mylist.Add(“item2”); 的foreach(在MYLIST串项目) { 项= item.Replace( “E”, “O”); }' – Yeronimo

1

使用for代替foreach,该foreach不要让你改变你的价值观。

使用for像这样的:

for(int i = 0; i < field.Length; i++) 
    //Do something to each field 
    field[i] = "text"+i; 
相关问题